@charset "UTF-8";
/*! normalize.css v8.0.0 | MIT License | github.com/necolas/normalize.css */
html { line-height: 1.15; /* 1 */ -webkit-text-size-adjust: 100%; /* 2 */ }

body { margin: 0; }

h1 { font-size: 2em; margin: 0.67em 0; }

hr { box-sizing: content-box; /* 1 */ height: 0; /* 1 */ overflow: visible; /* 2 */ }

pre { font-family: monospace, monospace; /* 1 */ font-size: 1em; /* 2 */ }

a { background-color: transparent; }

abbr[title] { border-bottom: none; /* 1 */ text-decoration: underline; /* 2 */ text-decoration: underline dotted; /* 2 */ }

b, strong { font-weight: bolder; }

code, kbd, samp { font-family: monospace, monospace; /* 1 */ font-size: 1em; /* 2 */ }

small { font-size: 80%; }

sub, sup { font-size: 75%; line-height: 0; position: relative; vertical-align: baseline; }

sub { bottom: -0.25em; }

sup { top: -0.5em; }

img { border-style: none; }

button, input, optgroup, select, textarea { font-size: 100%; /* 1 */ line-height: 1.15; /* 1 */ margin: 0; /* 2 */ }

button, input { /* 1 */ overflow: visible; }

button, select { /* 1 */ text-transform: none; }

button, [type="button"], [type="reset"], [type="submit"] { -webkit-appearance: button; }

button::-moz-focus-inner, [type="button"]::-moz-focus-inner, [type="reset"]::-moz-focus-inner, [type="submit"]::-moz-focus-inner { border-style: none; padding: 0; }

button:-moz-focusring, [type="button"]:-moz-focusring, [type="reset"]:-moz-focusring, [type="submit"]:-moz-focusring { outline: 1px dotted ButtonText; }

fieldset { padding: 0.35em 0.75em 0.625em; }

legend { box-sizing: border-box; /* 1 */ color: inherit; /* 2 */ display: table; /* 1 */ max-width: 100%; /* 1 */ padding: 0; /* 3 */ white-space: normal; /* 1 */ }

progress { vertical-align: baseline; }

textarea { overflow: auto; }

[type="checkbox"], [type="radio"] { box-sizing: border-box; /* 1 */ }

[type="number"]::-webkit-inner-spin-button, [type="number"]::-webkit-outer-spin-button { height: auto; }

[type="search"] { -webkit-appearance: textfield; /* 1 */ outline-offset: -2px; /* 2 */ }

[type="search"]::-webkit-search-decoration { -webkit-appearance: none; }

::-webkit-file-upload-button { -webkit-appearance: button; /* 1 */ font: inherit; /* 2 */ }

details { display: block; }

summary { display: list-item; }

template { display: none; }

[hidden] { display: none; }

/******************************************************************
reset
******************************************************************/
h1, h2, h3, h4, h5, h6, p, ul, ol, li, dl, dd { margin: 0; padding: 0; }

li { list-style: none; }

table { border-collapse: collapse; border-spacing: 0; }

iframe { border: 0; }

button { background-color: transparent; border: none; cursor: pointer; padding: 0; appearance: none; }

em { font-style: normal; font-weight: bold; }

fieldset { border: 0; padding: 0; margin: 0; }

address { font-style: normal; }

/******************************************************************
base
******************************************************************/
body { font-family: "PingFang SC", "Hiragino Sans GB", "Microsoft Yahei", "微软雅黑", Arial, Helvetica, sans-serif; font-size: 1rem; color: #404040; letter-spacing: 0.4px; line-height: 1.8; }

@media screen and (max-width: 768px) { body { font-size: 0.9rem; } }

body[data-menu-open="true"] { overflow: hidden; }

@media print { body { width: 1400px; transform: scale(0.8); transform-origin: 0 0; } }

a { color: #0164ac; text-decoration: none; }

a:hover { color: #002947; text-decoration: underline; }

h1, h2 { line-height: 1.5; }

h3 { line-height: 1.6; }

h4 { line-height: 1.7; }

small { font-size: 0.75rem; line-height: 1.6; line-height: 1.6; }

@media screen and (max-width: 768px) { small { font-size: 0.75rem; } }

img { max-width: 100%; height: auto; vertical-align: middle; -webkit-backface-visibility: hidden; }

hr { display: block; height: 1px; border: 0; border-top: 1px solid #d8d8d8; }

button, input, optgroup, select, textarea { color: #404040; line-height: inherit; }

/******************************************************************
override - mf_finder
******************************************************************/
.mf_finder_searchBox_suggest_items { background-color: #fff !important; border-color: #d8d8d8 !important; }

.mf_finder_searchBox_suggest_item { border-top: 1px solid #d8d8d8 !important; }

.mf_finder_searchBox_suggest_item a { color: #014d83 !important; padding: 6px 4px !important; font-size: 16px !important; font-weight: bold !important; }

.mf_finder_searchBox_suggest_item_cur, .mf_finder_searchBox_suggest_item_hover { background-color: #e8f6f8 !important; }

/******************************************************************
layout - wrapper
******************************************************************/
.l-wrapper { width: 100%; overflow: hidden; }

.l-header-overlay, .l-sp-header-overlay { display: none; z-index: 900; position: fixed; top: 0; left: 0; width: 100%; height: 100vh; background-color: rgba(0, 0, 0, 0.75); }

/******************************************************************
layout - header-fixed
******************************************************************/
.l-header-fixed { position: relative; z-index: 990; }

.l-header-fixed[data-header-fixed="false"] .l-header-fixed__inner { position: static; }

.l-header-fixed[data-header-fixed="true"] .l-header-fixed__inner { position: fixed; top: 0; width: 100%; }

/******************************************************************
layout - header
******************************************************************/
.l-header { background: #ffffff; }

@media print, screen and (min-width: 1001px) { .l-header__inner { max-width: 1200px; margin-right: auto; margin-left: auto; padding-right: 2rem; padding-left: 2rem; display: flex; justify-content: space-between; align-items: center; } }

@media print, screen and (max-width: 1000px) { .l-header__inner { display: flex; justify-content: space-between; }
  .l-header__left { padding: 15px 0 15px 2rem; flex-grow: 1; }
  .l-header__right { display: none; } }

@media screen and (max-width: 768px) { .l-header__left { padding: 10px; }
  .l-header__left img { max-width: 230px; } }

/******************************************************************
layout - sp-nav-full
******************************************************************/
@media print, screen and (min-width: 1001px) { .l-sp-nav-full { display: none; } }

@media print, screen and (max-width: 1000px) { .l-sp-nav-full { display: none; position: absolute; overflow-y: auto; -webkit-overflow-scrolling: touch; width: 100%; max-height: 100vh; box-sizing: border-box; background-color: #ffffff; }
  .l-sp-nav-full__inner { background: linear-gradient(135deg, #00a9c7 18%, #66cf70 100%); }
  .l-sp-nav-full__close a { display: block; padding-top: 1rem; padding-bottom: 1rem; text-align: center; }
  .l-sp-nav-full__close a span { position: relative; padding-left: 33px; }
  .l-sp-nav-full__close a span::before, .l-sp-nav-full__close a span::after { position: absolute; content: ""; margin: auto; box-sizing: border-box; vertical-align: middle; }
  .l-sp-nav-full__close a span::before { border-top: 1px solid #0164ac; width: 22px; height: 0; top: 0; bottom: 0; left: 0; transform: rotate(45deg); }
  .l-sp-nav-full__close a span::after { border-left: 1px solid #0164ac; width: 0; height: 22px; top: 0; bottom: 0; left: 10px; transform: rotate(45deg); } }

/******************************************************************
layout - nav-sub
******************************************************************/
@media print, screen and (min-width: 1001px) { .l-nav-sub > .l-nav-sub__item { margin-left: 13px; font-size: 1.2vw; } }

@media print, screen and (min-width: 1201px) { .l-nav-sub > .l-nav-sub__item { margin-left: 25px; font-size: 0.85rem; } }

@media screen and (min-width: 1201px) and (max-width: 768px) { .l-nav-sub > .l-nav-sub__item { font-size: 0.765rem; } }

@media print, screen and (min-width: 1001px) { .l-nav-sub__item > a { transition-property: padding; transition-duration: 0.1s; padding: 5px 0 3px 0; } }

@media print, screen and (min-width: 1001px) { .l-nav-sub { margin-top: 10px; display: flex; justify-content: flex-end; align-items: center; }
  .l-nav-sub > .l-nav-sub__item > a { box-sizing: border-box; display: inline-block; line-height: 1.5; color: inherit; text-decoration: none; }
  .l-nav-sub > .l-nav-sub__item > a:hover { color: inherit; text-decoration: none; }
  .l-nav-sub > .l-nav-sub__item > a span { transition-property: color; transition-duration: 0.3s; }
  .l-nav-sub > .l-nav-sub__item > a:hover span { color: #0164ac; }
  .l-nav-sub > .l-nav-sub__item--lang { position: relative; }
  .l-nav-sub > .l-nav-sub__item--lang > a span { display: inline-block; position: relative; padding-right: 5px; padding-right: 8px; }
  .l-nav-sub > .l-nav-sub__item--lang > a span::after { position: absolute; content: ""; margin: auto; box-sizing: border-box; vertical-align: middle; top: 0; bottom: 0; right: 0; transform: translate(0px, 0.25px) rotate(45deg); transform-origin: top right; border-bottom: 1px solid #666666; border-right: 1px solid #666666; width: 4px; height: 4px; transition-property: top, right, bottom, left; transition-duration: 0.3s; }
  .l-nav-sub > .l-nav-sub__item--lang ul { display: none; position: absolute; z-index: +1; border: 1px solid #d8d8d8; background-color: #ffffff; padding: 3px 8px; left: 50%; transform: translateX(-50%); }
  .l-nav-sub > .l-nav-sub__item--lang ul a { display: block; text-align: center; font-size: 0.75rem; white-space: nowrap; } }

@media screen and (min-width: 1001px) and (max-width: 768px) { .l-nav-sub > .l-nav-sub__item--lang ul a { font-size: 0.675rem; } }

/******************************************************************
layout - nav-main
******************************************************************/
@media print, screen and (min-width: 1001px) { .l-nav-main > .l-nav-main__item { margin-left: 1.4vw; font-size: 1.4vw; } }

@media print, screen and (min-width: 1201px) { .l-nav-main > .l-nav-main__item { margin-left: 30px; font-size: 1rem; } }

@media screen and (min-width: 1201px) and (max-width: 768px) { .l-nav-main > .l-nav-main__item { font-size: 0.9rem; } }

@media print, screen and (min-width: 1001px) { .l-nav-main__item > a { transition-property: padding; transition-duration: 0.1s; padding: 12px 0 14px 0; } }

@media print, screen and (min-width: 1001px) { .l-nav-main { display: flex; justify-content: flex-end; }
  .l-nav-main > .l-nav-main__item > a { display: flex; position: relative; align-items: center; box-sizing: border-box; height: 100%; text-align: center; line-height: 1.5; color: inherit; text-decoration: none; }
  .l-nav-main > .l-nav-main__item > a:hover { color: inherit; text-decoration: none; }
  .l-nav-main > .l-nav-main__item > a span { transition-property: color; transition-duration: 0.3s; }
  .l-nav-main > .l-nav-main__item > a:hover span { color: #0164ac; }
  .l-nav-main > .l-nav-main__item > a > span { flex-grow: 1; display: block; }
  .css-about .l-nav-main__item.css-about > a::after, .css-product .l-nav-main__item.css-product > a::after, .css-support .l-nav-main__item.css-support > a::after, .css-news .l-nav-main__item.css-news > a::after, .css-company .l-nav-main__item.css-company > a::after, .css-ir .l-nav-main__item.css-ir > a::after, .css-csr .l-nav-main__item.css-csr > a::after, .css-recruit .l-nav-main__item.css-recruit > a::after { position: absolute; content: ""; margin: auto; box-sizing: border-box; vertical-align: middle; right: 0; bottom: 0; left: 0; width: 100%; border-bottom: 4px solid #0080ad; } }

/******************************************************************
layout - nav-mega
******************************************************************/
.l-nav-mega { position: absolute; left: 0; width: 100%; border-top: 1px solid #d8d8d8; background: linear-gradient(135deg, #00a9c7 0%, #66cf70 42%, #66cf70 49%, #ffffff 50%); }

@media print, screen and (min-width: 769px) { .l-nav-mega { display: none; line-height: 1.5; font-size: 0.95rem; } }

@media screen and (min-width: 769px) and (max-width: 768px) { .l-nav-mega { font-size: 0.855rem; } }

@media print, screen and (min-width: 769px) { .l-nav-mega a { color: inherit; text-decoration: none; transition-property: all; transition-duration: 0.3s; }
  .l-nav-mega a:hover { color: inherit; text-decoration: none; }
  .l-nav-mega a:hover { color: #0164ac; }
  .l-nav-mega__inner { max-width: 1200px; margin-right: auto; margin-left: auto; padding-right: 2rem; padding-left: 2rem; display: flex; }
  .l-nav-mega__left { box-sizing: border-box; width: 20%; padding: 2rem 2rem 2rem 0; color: #ffffff; }
  .l-nav-mega__left > *:not(:last-child) { margin-bottom: 2rem; } }

@media screen and (min-width: 769px) and (max-width: 768px) { .l-nav-mega__left > *:not(:last-child) { margin-bottom: 1.5rem; } }

@media print, screen and (min-width: 769px) { .l-nav-mega__title { line-height: 1.1; font-size: 1.8rem; } }

@media screen and (min-width: 769px) and (max-width: 768px) { .l-nav-mega__title { font-size: 1.62rem; } }

@media print, screen and (min-width: 769px) { .l-nav-mega__title a { display: inline-block; color: inherit; text-decoration: none; position: relative; padding-left: 16px; padding-left: 22px; }
  .l-nav-mega__title a:hover { color: inherit; text-decoration: none; }
  .l-nav-mega__title a::after { position: absolute; content: ""; margin: auto; box-sizing: border-box; vertical-align: middle; top: 0; left: 0; transform: translate(16px, 0.7em) rotate(135deg); transform-origin: top left; border-top: 2px solid #ffffff; border-left: 2px solid #ffffff; width: 12px; height: 12px; transition-property: top, right, bottom, left; transition-duration: 0.3s; }
  .l-nav-mega__title a::after { top: -6px; }
  .l-nav-mega__title a:hover { opacity: 0.8; }
  .l-nav-mega__title-en { font-size: 0.9rem; display: block; margin-top: 5px; line-height: 1.2; } }

@media screen and (min-width: 769px) and (max-width: 768px) { .l-nav-mega__title-en { font-size: 0.81rem; } }

@media print, screen and (min-width: 769px) { .l-nav-mega__title-link li { position: relative; padding-left: 12.5px; padding-left: 1.2em; }
  .l-nav-mega__title-link li::after { position: absolute; content: ""; margin: auto; box-sizing: border-box; vertical-align: middle; top: 0; left: 0; transform: translate(12.5px, 0.7em) rotate(135deg); transform-origin: top left; border-top: 2px solid #ffffff; border-left: 2px solid #ffffff; width: 7px; height: 7px; transition-property: top, right, bottom, left; transition-duration: 0.3s; }
  .l-nav-mega__title-link a { color: inherit; text-decoration: none; }
  .l-nav-mega__title-link a:hover { color: inherit; text-decoration: none; }
  .l-nav-mega__title-link a:hover { opacity: 0.8; }
  .l-nav-mega__right { box-sizing: border-box; width: 80%; padding: 2rem 0 2rem 2rem; background-color: #ffffff; }
  .l-nav-mega__flex { display: flex; }
  .l-nav-mega__flex-left { box-sizing: border-box; width: 83%; padding-right: 2rem; }
  .l-nav-mega__flex-right { box-sizing: border-box; width: 17%; border-left: 1px solid #d8d8d8; padding-left: 2rem; }
  .l-nav-mega__flex2 { display: flex; }
  .l-nav-mega__flex2-left { box-sizing: border-box; width: 80%; padding-right: 2rem; }
  .l-nav-mega__flex2-right { box-sizing: border-box; width: 20%; border-left: 1px solid #d8d8d8; padding-left: 2rem; }
  .l-nav-mega__menu { display: flex; }
  .l-nav-mega__menu-item:not(:last-child) { margin-right: 5%; }
  .l-nav-mega .c-list-arrow-glid { margin-top: -10px; }
  .l-nav-mega .c-list-arrow-glid__item4, .l-nav-mega .c-list__item, .l-nav-mega .c-list-arrow__item { margin-top: 10px; }
  .l-nav-mega .c-list-arrow__item--fit { margin-top: 3px; } }

/******************************************************************
layout - sp-nav-control
******************************************************************/
@media print, screen and (min-width: 1001px) { .l-sp-nav-control { display: none; } }

@media print, screen and (max-width: 1000px) { .l-sp-nav-control { display: block; background: #0164ac; padding: 10px 3vw; }
  .l-sp-nav-control__item { display: inline-block; top: -1px; vertical-align: middle; position: relative; border-top: 2px solid #fff; width: 24px; transition-property: all; transition-duration: 0.3s; }
  .l-sp-nav-control__item::before, .l-sp-nav-control__item::after { position: absolute; content: ""; margin: auto; box-sizing: border-box; vertical-align: middle; width: 0; height: 0; left: 0; transition-property: all; transition-duration: 0.3s; }
  .l-sp-nav-control__item::before { border-bottom: 2px solid #fff; width: 24px; bottom: 8px; }
  .l-sp-nav-control__item::after { border-bottom: 2px solid #fff; width: 24px; bottom: -8px; }
  .l-sp-nav-control[aria-expanded="true"] .l-sp-nav-control__item { border-top-color: transparent; }
  .l-sp-nav-control[aria-expanded="true"] .l-sp-nav-control__item::before { bottom: 0; transform: rotate(-45deg); }
  .l-sp-nav-control[aria-expanded="true"] .l-sp-nav-control__item::after { bottom: 0; transform: rotate(45deg); } }

@media screen and (max-width: 768px) { .l-sp-nav-control { padding: 10px 13px; } }

/******************************************************************
layout - sp-nav-switch
******************************************************************/
.l-sp-nav-switch { display: none; }

@media screen and (max-width: 768px) { .l-sp-nav-switch { display: block; }
  .l-sp-nav-switch button { display: inline-block; text-align: center; cursor: pointer; vertical-align: middle; box-sizing: border-box; border: 1px solid transparent; line-height: 1.5; display: block; width: 100%; font-size: 1.1rem; color: #ffffff; outline: 0; padding: 1em 1em 1em 1em; } }

@media screen and (max-width: 768px) and (max-width: 768px) { .l-sp-nav-switch button { font-size: 0.99rem; } }

@media screen and (max-width: 768px) { .l-sp-nav-switch button span { display: inline-block; position: relative; padding-right: 19px; padding-right: 1.5em; }
  .l-sp-nav-switch button span::after { position: absolute; content: ""; margin: auto; box-sizing: border-box; vertical-align: middle; top: 0; bottom: 0; right: 0; transform: translate(-8px, 0.75px) rotate(45deg); transform-origin: top right; border-bottom: 2px solid #ffffff; border-right: 2px solid #ffffff; width: 8px; height: 8px; transition-property: top, right, bottom, left; transition-duration: 0.3s; }
  .l-sp-nav-switch button[aria-expanded="true"] span::after { transform: translate(-19px, 5.5px) rotate(-135deg); } }

/******************************************************************
layout - header-navs
******************************************************************/
@media print, screen and (max-width: 1000px) { .js-l-header-nav__target { display: none; }
  .l-header-nav1-titles { border-top: 1px solid rgba(21, 122, 195, 0.3); display: flex; color: #ffffff; }
  .l-header-nav1-titles__link { flex-grow: 1; display: block; color: inherit; text-decoration: none; padding-top: 0.95rem; padding-bottom: 0.95rem; }
  .l-header-nav1-titles__link:hover { color: inherit; text-decoration: none; }
  .l-header-nav1-titles__link span { font-size: 1rem; display: inline-block; position: relative; padding-left: 15.5px; padding-left: calc(0.75rem + 10px); } }

@media screen and (max-width: 1000px) and (max-width: 768px) { .l-header-nav1-titles__link span { font-size: 0.9rem; } }

@media print, screen and (max-width: 1000px) { .l-header-nav1-titles__link span::after { position: absolute; content: ""; margin: auto; box-sizing: border-box; vertical-align: middle; top: 0; left: 0; transform: translate(15.5px, 0.8em) rotate(135deg); transform-origin: top left; border-top: 1px solid #ffffff; border-left: 1px solid #ffffff; width: 7px; height: 7px; transition-property: top, right, bottom, left; transition-duration: 0.3s; }
  .l-header-nav1-titles__button { display: block; padding: 0 19px; border-left: 1px solid rgba(21, 122, 195, 0.3); }
  .l-header-nav1-titles__icon { display: block; width: 11px; position: relative; }
  .l-header-nav1-titles__icon::before, .l-header-nav1-titles__icon::after { position: absolute; content: ""; margin: auto; box-sizing: border-box; vertical-align: middle; }
  .l-header-nav1-titles__icon::before { border-top: 1px solid #ffffff; width: 11px; height: 0; top: 0; bottom: 0; left: 0; }
  .l-header-nav1-titles__icon::after { border-left: 1px solid #ffffff; width: 0; height: 11px; top: 0; bottom: 0; left: 5px; transition-property: all; transition-duration: 0.3s; }
  .l-header-nav1-titles__button[aria-expanded="true"] .l-header-nav1-titles__icon::after { height: 0; }
  .l-header-nav1-data { border-top: 1px solid #ffffff; display: block; color: inherit; text-decoration: none; padding-top: 0.75rem; padding-bottom: 0.75rem; background-color: rgba(255, 255, 255, 0.7); }
  .l-header-nav1-data:hover { color: inherit; text-decoration: none; }
  .l-header-nav1-data span { display: inline-block; position: relative; padding-left: 15.5px; padding-left: calc(0.75rem + 10px); }
  .l-header-nav1-data span::after { position: absolute; content: ""; margin: auto; box-sizing: border-box; vertical-align: middle; top: 0; left: 0; transform: translate(15.5px, 0.8em) rotate(135deg); transform-origin: top left; border-top: 1px solid #0164ac; border-left: 1px solid #0164ac; width: 7px; height: 7px; transition-property: top, right, bottom, left; transition-duration: 0.3s; } }

/******************************************************************
layout - search-box
******************************************************************/
@media print, screen and (min-width: 1001px) { .l-search-box__inner { border: 1px solid #a5a5a5; border-radius: 60px; padding: 0 6px 0 8px; width: 300px; } }

@media print, screen and (min-width: 1001px) and (max-width: 1200px) { .l-search-box__inner { width: 200px; } }

@media print, screen and (min-width: 1001px) { .l-search-box .mf_finder_searchBox { margin-left: 0 !important; margin-right: 0 !important; }
  .l-search-box .mf_finder_searchBox_items { padding: 0; }
  .l-search-box .mf_finder_searchBox_suggest_items { text-align: left; }
  .l-search-box .mf_finder_searchBox_suggest_item { padding-left: 0.4em; }
  .l-search-box input[type="text"] { line-height: 1; font-size: 14px; background: transparent; outline: 0; border: 0; } }

@media print, screen and (min-width: 1001px) and (max-width: 1200px) { .l-search-box input[type="text"] { font-size: 12px; } }

@media print, screen and (min-width: 1001px) { .l-search-box .mf_finder_searchBox_submit { display: block; width: 24px; height: 32px; background-color: transparent; border-radius: 0; padding: 0; transition-property: opacity; transition-duration: 0.3s; }
  .l-search-box .mf_finder_searchBox_submit::after { content: ''; display: inline-block; width: 18px; height: 18px; background-image: url(/common/images/re2_icon_search.png); background-size: contain; vertical-align: middle; }
  .l-search-box .mf_finder_searchBox_submit:hover { opacity: 0.6; }
  .l-search-box .mf_finder_searchBox_submit::before { display: none; }
  .l-search-box .mf_finder_searchBox_submit span { position: absolute; width: 0px; height: 0px; top: -999px; overflow: hidden; } }

@media print, screen and (max-width: 1000px) { .l-search-box { background: #0164ac; padding-top: 0.75rem; padding-bottom: 0.75rem; padding-right: 0.75rem; padding-left: 0.75rem; }
  .l-search-box__inner { background-color: #ffffff; border-radius: 60px; padding: 0.375rem 0.75rem; }
  .l-search-box .mf_finder_searchBox { margin: 0; }
  .l-search-box .mf_finder_searchBox_items { padding: 0; }
  .l-search-box .mf_finder_searchBox_suggest_items { text-align: left; }
  .l-search-box .mf_finder_searchBox_suggest_item { padding-left: 0.4em; }
  .l-search-box input[type="text"] { font-size: 1.2rem; outline: 0; border: 0; } }

@media screen and (max-width: 1000px) and (max-width: 768px) { .l-search-box input[type="text"] { font-size: 1.08rem; } }

@media print, screen and (max-width: 1000px) { .l-search-box .mf_finder_searchBox_submit { display: block; width: 33px; height: 33px; background-color: transparent; border-radius: 0; padding: 0; }
  .l-search-box .mf_finder_searchBox_submit::after { content: ''; display: inline-block; width: 20px; height: 20px; background-image: url(/common/images/re2_icon_search.png); background-size: contain; vertical-align: middle; }
  .l-search-box .mf_finder_searchBox_submit::before { display: none; }
  .l-search-box .mf_finder_searchBox_submit span { position: absolute; width: 0px; height: 0px; top: -999px; overflow: hidden; } }

/******************************************************************
layout - visual
******************************************************************/
@media print, screen and (min-width: 769px) { .l-visual-cattop { margin-bottom: 2.5rem; }
  .l-visual-cattop__title { transform: translateY(1.5rem); width: 34%; min-width: 340px; background: linear-gradient(135deg, #00a9c7 18%, #66cf70 100%); color: #ffffff; text-align: right; padding: 1.5rem 2rem 1.2rem 0; line-height: 1.4; }
  .l-visual-cattop__title-inner { display: inline-block; text-align: center; font-size: 1.9rem; font-weight: normal; } }

@media screen and (min-width: 769px) and (max-width: 768px) { .l-visual-cattop__title-inner { font-size: 1.71rem; } }

@media print, screen and (min-width: 769px) { .l-visual-cattop__title-inner span { display: block; font-size: 0.75rem; line-height: 1.6; } }

@media screen and (min-width: 769px) and (max-width: 768px) { .l-visual-cattop__title-inner span { font-size: 0.75rem; } }

@media screen and (max-width: 768px) { .l-visual-cattop { margin-bottom: 1.875rem; }
  .l-visual-cattop__title { transform: translateY(1.125rem); display: inline-block; background: linear-gradient(135deg, #00a9c7 18%, #66cf70 100%); color: #ffffff; padding: 0.9rem 1.5rem 0.6rem 1.5rem; line-height: 1.4; }
  .l-visual-cattop__title-inner { display: inline-block; text-align: center; font-size: 1.2rem; font-weight: normal; } }

@media screen and (max-width: 768px) and (max-width: 768px) { .l-visual-cattop__title-inner { font-size: 1.08rem; } }

@media screen and (max-width: 768px) { .l-visual-cattop__title-inner span { display: block; font-size: 0.6rem; line-height: 1.6; } }

@media screen and (max-width: 768px) and (max-width: 768px) { .l-visual-cattop__title-inner span { font-size: 0.6rem; } }

.l-visual-detail { background: linear-gradient(135deg, #00a9c7 18%, #66cf70 100%); margin-bottom: 1rem; }

@media screen and (max-width: 768px) { .l-visual-detail { margin-bottom: 0; } }

.l-visual-detail__inner { box-sizing: border-box; padding-right: 2rem; padding-left: 2rem; max-width: 1200px; margin-right: auto; margin-left: auto; padding-right: 2rem; padding-left: 2rem; color: #ffffff; display: flex; align-items: center; padding-top: 2rem; padding-bottom: 2rem; min-height: 120px; }

@media screen and (max-width: 768px) { .l-visual-detail__inner { padding-top: 2.25rem; padding-bottom: 2.25rem; min-height: 80px; } }

.l-visual-detail__group { width: 100%; }

@media screen and (max-width: 768px) { .l-visual-detail__titlesub { text-align: center; } }

.l-visual-detail__title { font-size: 2rem; font-weight: normal; }

@media screen and (max-width: 768px) { .l-visual-detail__title { font-size: 1.8rem; } }

@media screen and (max-width: 768px) { .l-visual-detail__title { width: 100%; font-size: 1.3rem; text-align: center; } }

@media screen and (max-width: 768px) and (max-width: 768px) { .l-visual-detail__title { font-size: 1.17rem; } }

/******************************************************************
layout - breadcrumb
******************************************************************/
@media print, screen and (min-width: 769px) { .l-breadcrumb__inner { max-width: 1200px; margin-right: auto; margin-left: auto; padding-right: 2rem; padding-left: 2rem; padding-top: 0.5rem; padding-bottom: 1.5rem; } }

@media screen and (max-width: 768px) { .l-breadcrumb { display: none; } }

/******************************************************************
layout - contents
******************************************************************/
.l-contents--2row .l-contents__inner { max-width: 1200px; margin-right: auto; margin-left: auto; padding-right: 2rem; padding-left: 2rem; display: flex; justify-content: space-between; }

.l-contents--2row .l-contents__aside { width: 240px; margin-bottom: 4rem; }

.l-contents--2row .l-contents__main { width: calc(100% - 280px); }

@media print, screen and (max-width: 1000px) { .l-contents--2row .l-contents__aside { width: 22%; }
  .l-contents--2row .l-contents__main { width: calc(100% - 22% - 3%); } }

@media screen and (max-width: 768px) { .l-contents__main { margin-top: 0.75rem; }
  .p-index_carousel + .l-contents .l-contents__main { margin-top: 0; }
  .l-contents--2row .l-contents__inner { max-width: none; margin-right: auto; margin-left: auto; padding-right: 0; padding-left: 0; display: flex; flex-direction: column; }
  .l-contents--2row .l-contents__aside { width: 100%; margin-bottom: 0; }
  .l-contents--2row .l-contents__main { width: 100%; } }

/******************************************************************
layout - aside
******************************************************************/
.l-aside { border-top: 1px solid #d8d8d8; }

.l-aside__title { border-bottom: 3px solid #0164ac; font-weight: bold; }

.l-aside__title a { display: block; padding: 0.8em 0.5em; transition-property: background; transition-duration: 0.3s; }

.l-aside__title a:hover { text-decoration: none; background-color: #edf7f3; }

.l-aside__title span { display: block; padding: 0.8em 0.5em; }

.l-aside__menu + .l-aside__menu { margin-top: 2rem; border-top: 1px solid #d8d8d8; }

.l-aside__menu > li { border-bottom: 1px solid #d8d8d8; }

.l-aside__menu > li > a { display: block; padding: 0.5em 0.7em; transition-property: background; transition-duration: 0.3s; }

.l-aside__menu > li > a:hover { text-decoration: none; background-color: #edf7f3; }

.l-aside__menu > li > a.current { background-color: #00a9c7; color: #ffffff; }

.l-aside__menu > li > span { display: block; padding: 0.5em 0.7em; }

.l-aside__menu > li > ul { margin-left: 1em; font-size: 85%; }

.l-aside__menu > li > ul > li { border-top: 1px solid #d8d8d8; }

.l-aside__menu > li > ul > li > a { display: block; padding: 0.3em 0.6em; transition-property: background; transition-duration: 0.3s; }

.l-aside__menu > li > ul > li > a:hover { text-decoration: none; background-color: #edf7f3; }

.l-aside__menu > li > ul > li > a.current { background-color: #00a9c7; color: #ffffff; }

.l-aside__menu > li > ul > li > span { display: block; padding: 0.3em 0.6em; }

@media screen and (max-width: 768px) { .l-aside-control { background-color: #0164ac; } }

/******************************************************************
layout - pagetop
******************************************************************/
@media print, screen and (min-width: 769px) { [data-pagetop] { position: relative; }
  [data-pagetop] .l-pagetop__btn { display: none; position: absolute; bottom: 30px; right: 30px; }
  [data-pagetop="fixed"] .l-pagetop__btn { position: fixed; z-index: 100; } }

@media screen and (min-width: 769px) and (max-width: 768px) { [data-pagetop] .l-pagetop__btn { bottom: 10px; right: 10px; } }

@media print, screen and (min-width: 769px) { .l-pagetop__btn { display: block; box-sizing: border-box; } }

@media print, screen and (min-width: 769px) { .l-pagetop__btn { position: relative; width: 60px; height: 60px; border: 1px solid #d8d8d8; border-radius: 100%; background: #fff; transition-property: background; transition-duration: 0.3s; }
  .l-pagetop__btn::after { position: absolute; content: ""; margin: auto; box-sizing: border-box; vertical-align: middle; top: 0; bottom: 0; right: 0; left: 0; transform: translate(9px, 1px) rotate(45deg); transform-origin: top left; border-top: 2px solid #0164ac; border-left: 2px solid #0164ac; width: 18px; height: 18px; transition-property: top, right, bottom, left; transition-duration: 0.3s; }
  .l-pagetop__btn:hover { background: #0164ac; }
  .l-pagetop__btn:hover::after { border-color: #fff; } }

@media screen and (max-width: 768px) { .l-pagetop { background-color: #0164ac; }
  .l-pagetop__btn { position: relative; width: 100%; height: 60px; }
  .l-pagetop__btn::after { position: absolute; content: ""; margin: auto; box-sizing: border-box; vertical-align: middle; top: 0; bottom: 0; right: 0; left: 0; transform: translate(7.5px, 1px) rotate(45deg); transform-origin: top left; border-top: 2px solid #ffffff; border-left: 2px solid #ffffff; width: 15px; height: 15px; transition-property: top, right, bottom, left; transition-duration: 0.3s; } }

/******************************************************************
layout - footer-nav
******************************************************************/
.l-footer-nav { background: #FAFAFA; color: #535353; }

@media print, screen and (min-width: 769px) { .l-footer-nav { border-top: 1px solid #d8d8d8; }
  .l-footer-nav__inner { max-width: 1200px; margin-right: auto; margin-left: auto; padding-right: 2rem; padding-left: 2rem; padding-top: 3rem; padding-bottom: 3rem; display: flex; justify-content: space-between; }
  .l-footer-nav__block { width: 18%; }
  .l-footer-nav__block > *:not(:last-child) { margin-bottom: 2rem; } }

@media screen and (min-width: 769px) and (max-width: 768px) { .l-footer-nav__block > *:not(:last-child) { margin-bottom: 1.5rem; } }

/******************************************************************
layout - footer-btn
******************************************************************/
.l-footer-btn a { color: #5a5a5a; text-decoration: none; }

.l-footer-btn a:hover { color: #5a5a5a; text-decoration: none; }

.l-footer-btn a:hover { text-decoration: underline; }

@media print, screen and (min-width: 769px) { .l-footer-btn { border-top: 1px solid #d8d8d8; }
  .l-footer-btn__inner { max-width: 1200px; margin-right: auto; margin-left: auto; padding-right: 2rem; padding-left: 2rem; padding-top: 1.5rem; padding-bottom: 1.5rem; display: flex; justify-content: center; align-items: center; }
  .l-footer-btn__inner li:first-child { border-left: 1px solid #d8d8d8; }
  .l-footer-btn__inner li { line-height: 1.4; border-right: 1px solid #d8d8d8; padding-left: 1rem; padding-right: 1rem; }
  .l-footer-btn__inner a { font-weight: bold; font-size: 0.9rem; } }

@media screen and (min-width: 769px) and (max-width: 768px) { .l-footer-btn__inner a { font-size: 0.81rem; } }

@media screen and (max-width: 768px) { .l-footer-btn__inner { padding-top: 1.125rem; padding-bottom: 1.125rem; display: flex; justify-content: center; align-items: center; }
  .l-footer-btn__inner li:first-child { border-left: 1px solid #d8d8d8; }
  .l-footer-btn__inner li { line-height: 1.4; border-right: 1px solid #d8d8d8; padding-left: 0.75rem; padding-right: 0.75rem; }
  .l-footer-btn__inner a { font-weight: bold; font-size: 0.9rem; } }

@media screen and (max-width: 768px) and (max-width: 768px) { .l-footer-btn__inner a { font-size: 0.81rem; } }

/******************************************************************
layout - footer
******************************************************************/
.l-footer { color: #fff; background: #333333; }

.l-footer a { color: inherit; text-decoration: none; transition-property: opacity; transition-duration: 0.3s; }

.l-footer a:hover { color: inherit; text-decoration: none; }

.l-footer a:hover { opacity: 0.8; }

.l-footer-copy { text-align: center; color: #838181; }

@media print, screen and (min-width: 769px) { .l-footer { background-color: #10afba; color: #ffffff; }
  .l-footer__inner { max-width: 1200px; margin-right: auto; margin-left: auto; padding-right: 2rem; padding-left: 2rem; padding-top: 1.5rem; padding-bottom: 1.5rem; display: flex; justify-content: space-between; align-items: center; }
  .l-footer__inner ul { display: flex; justify-content: flex-end; }
  .l-footer__inner ul li { margin-right: 1rem; }
  .l-footer-copy { padding-top: 2rem; padding-bottom: 2rem; font-size: 0.9rem; } }

@media screen and (min-width: 769px) and (max-width: 768px) { .l-footer-copy { font-size: 0.81rem; } }

@media screen and (max-width: 768px) { .l-footer { background-color: #10afba; color: #ffffff; }
  .l-footer__inner { padding-top: 1.125rem; padding-bottom: 1.125rem; text-align: center; }
  .l-footer__inner p { padding: 0 20px; }
  .l-footer__inner p img { max-width: 230px; }
  .l-footer__inner ul { display: flex; justify-content: center; }
  .l-footer__inner ul li { margin: 0 5px; }
  .l-footer-copy { padding: 0.75rem; font-size: 0.9rem; } }

@media screen and (max-width: 768px) and (max-width: 768px) { .l-footer-copy { font-size: 0.81rem; } }

/******************************************************************
layout - footer-nav-list
******************************************************************/
@media print, screen and (min-width: 769px) { .l-footer-nav-list__item a { font-weight: bold; display: inline-block; color: inherit; text-decoration: none; }
  .l-footer-nav-list__item a:hover { color: inherit; text-decoration: none; }
  .l-footer-nav-list__item a:hover { text-decoration: underline; } }

@media screen and (max-width: 768px) { .l-footer-nav-list { display: flex; flex-wrap: wrap; }
  .l-footer-nav-list__item:nth-child(odd) { border-right: 1px solid #d8d8d8; }
  .l-footer-nav-list__item { border-top: 1px solid #d8d8d8; width: 50%; }
  .l-footer-nav-list__item { box-sizing: border-box; }
  .l-footer-nav-list__item a { padding-top: 0.375rem; padding-bottom: 0.375rem; font-weight: bold; font-size: 0.9rem; display: block; text-align: center; color: inherit; text-decoration: none; } }

@media screen and (max-width: 768px) and (max-width: 768px) { .l-footer-nav-list__item a { font-size: 0.81rem; } }

@media screen and (max-width: 768px) { .l-footer-nav-list__item a:hover { color: inherit; text-decoration: none; } }

/******************************************************************
layout - footer-navs
******************************************************************/
@media print, screen and (min-width: 769px) { .l-footer-nav1-titles { font-size: 1rem; } }

@media screen and (min-width: 769px) and (max-width: 768px) { .l-footer-nav1-titles { font-size: 0.9rem; } }

@media print, screen and (min-width: 769px) { .l-footer-nav1-titles__link { display: inline-block; color: inherit; text-decoration: none; }
  .l-footer-nav1-titles__link:hover { color: inherit; text-decoration: none; }
  .l-footer-nav1-titles__link:hover { text-decoration: underline; }
  .l-footer-nav1-data { display: inline-block; color: inherit; text-decoration: none; font-size: 0.9rem; padding-left: 0.75em; margin-top: 5px; }
  .l-footer-nav1-data:hover { color: inherit; text-decoration: none; }
  .l-footer-nav1-data:hover { text-decoration: underline; } }

@media screen and (min-width: 769px) and (max-width: 768px) { .l-footer-nav1-data { font-size: 0.81rem; } }

@media screen and (max-width: 768px) { .js-l-footer-nav__target { display: none; }
  .l-footer-nav1-titles { border-top: 1px solid #d8d8d8; display: flex; }
  .l-footer-nav1-titles__link { flex-grow: 1; display: block; color: inherit; text-decoration: none; padding-top: 0.95rem; padding-bottom: 0.95rem; }
  .l-footer-nav1-titles__link:hover { color: inherit; text-decoration: none; }
  .l-footer-nav1-titles__link span { font-size: 0.9rem; display: inline-block; position: relative; padding-left: 15.5px; padding-left: calc(0.75rem + 10px); } }

@media screen and (max-width: 768px) and (max-width: 768px) { .l-footer-nav1-titles__link span { font-size: 0.81rem; } }

@media screen and (max-width: 768px) { .l-footer-nav1-titles__link span::after { position: absolute; content: ""; margin: auto; box-sizing: border-box; vertical-align: middle; top: 0; left: 0; transform: translate(15.5px, 0.8em) rotate(135deg); transform-origin: top left; border-top: 1px solid #0164ac; border-left: 1px solid #0164ac; width: 7px; height: 7px; transition-property: top, right, bottom, left; transition-duration: 0.3s; }
  .l-footer-nav1-titles__button { display: block; padding: 0 18px; border-left: 1px solid #d8d8d8; }
  .l-footer-nav1-titles__icon { display: block; width: 11px; position: relative; }
  .l-footer-nav1-titles__icon::before, .l-footer-nav1-titles__icon::after { position: absolute; content: ""; margin: auto; box-sizing: border-box; vertical-align: middle; }
  .l-footer-nav1-titles__icon::before { border-top: 1px solid #0164ac; width: 11px; height: 0; top: 0; bottom: 0; left: 0; }
  .l-footer-nav1-titles__icon::after { border-left: 1px solid #0164ac; width: 0; height: 11px; top: 0; bottom: 0; left: 5px; transition-property: all; transition-duration: 0.3s; }
  .l-footer-nav1-titles__button[aria-expanded="true"] .l-footer-nav1-titles__icon::after { height: 0; }
  .l-footer-nav1-data { border-top: 1px solid #d8d8d8; display: block; color: inherit; text-decoration: none; padding-top: 0.75rem; padding-bottom: 0.75rem; }
  .l-footer-nav1-data:hover { color: inherit; text-decoration: none; }
  .l-footer-nav1-data span { display: inline-block; position: relative; padding-left: 15.5px; padding-left: calc(0.75rem + 10px); }
  .l-footer-nav1-data span::after { position: absolute; content: ""; margin: auto; box-sizing: border-box; vertical-align: middle; top: 0; left: 0; transform: translate(15.5px, 0.8em) rotate(135deg); transform-origin: top left; border-top: 1px solid #0164ac; border-left: 1px solid #0164ac; width: 7px; height: 7px; transition-property: top, right, bottom, left; transition-duration: 0.3s; } }

/******************************************************************
component - bg-download
******************************************************************/
.c-bg-download { display: inline-block; background: url(/common/images/re2_icon_download.png) left 0.5em no-repeat; padding-left: 1.3em; }

/******************************************************************
component - bg-right-download
******************************************************************/
.c-bg-right-download { background: url(/common/images/re2_icon_download.png) right center no-repeat; padding-right: 1.3em; }

/******************************************************************
component - bg-movie
******************************************************************/
.c-bg-movie { display: inline-block; background: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAOCAYAAAAmL5yKAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAQdJREFUeNqU0rFLQlEUx/HznlcImkRIyNmgSRBHF/sXam4Jwj/A/gmHZtHFwaGtvcXVwa1BgqbAoJYSCSxL+5480lN7XjvwkR9y7tF33g1S1zcDEUkhwARJmZcvz/Di+NhHBVM0cG6NvhyirgPecIIvc2yNvpzQswGP8EGoogt9nKw1+nIBl84mdXAbaXD2SwP5rdX8qnsLbRlpWa5D3OECe/J3/ZwJJb5yqOEBVziyN7VUmwYsKohYK7fh4D2aaOE5rsnZ5OHK930c2H7iargYoBcojxGekLEGX9YzMx3wjjOcooieNfqyXuepDthF2/5u2TYuW2R9ASW9iY+RZe5g/I/8+S3AAGX4TbgJ9TZ+AAAAAElFTkSuQmCC) left 0.3em no-repeat; padding-left: 1.4em; line-height: 1.5; }

/******************************************************************
component - bg-right-arrow
******************************************************************/
.c-bg-right-arrow { position: relative; padding-right: 6.5px; padding-right: 0.75em; }

.c-bg-right-arrow::after { position: absolute; content: ""; margin: auto; box-sizing: border-box; vertical-align: middle; top: 0; bottom: 0; right: 0; transform: translate(0px, 2.5px) rotate(45deg); transform-origin: top right; border-top: 2px solid #10afba; border-right: 2px solid #10afba; width: 7px; height: 7px; transition-property: top, right, bottom, left; transition-duration: 0.3s; }

.c-bg-right-arrow.is-active::after { transform: translate(-6.5px, 2.5px) rotate(225deg); }

.c-bg-right-arrow--white::after { border-color: #ffffff; }

/******************************************************************
component - heading
******************************************************************/
.c-heading-blue { font-size: 2.4rem; line-height: 1.4; color: #0164ac; }

@media screen and (max-width: 768px) { .c-heading-blue { font-size: 2.16rem; } }

@media screen and (max-width: 768px) { .c-heading-blue { font-size: 1.8rem; } }

@media screen and (max-width: 768px) and (max-width: 768px) { .c-heading-blue { font-size: 1.62rem; } }

.c-heading-blue span { display: block; font-size: 0.8rem; color: #404040; }

@media screen and (max-width: 768px) { .c-heading-blue span { font-size: 0.72rem; } }

.c-heading1 { font-size: 2rem; color: #0164ac; }

@media screen and (max-width: 768px) { .c-heading1 { font-size: 1.5rem; } }

.c-heading2 { font-size: 1.75rem; border-left: 5px solid #0164ac; padding-left: 10px; }

.c-heading2:not(:first-child) { margin-top: 2rem; }

@media screen and (max-width: 768px) { .c-heading2:not(:first-child) { margin-top: 1.5rem; } }

@media screen and (max-width: 768px) { .c-heading2 { font-size: 1.25rem; } }

.c-heading3 { font-size: 1.3rem; background-color: #00a9c7; color: #ffffff; padding: 0.4em; }

.c-heading3 a, .c-heading3 a:hover { color: #ffffff; }

@media screen and (max-width: 768px) { .c-heading3 { font-size: 1.1rem; } }

.c-heading4 { font-size: 1.5rem; }

@media screen and (max-width: 768px) { .c-heading4 { font-size: 1.2rem; } }

.c-heading5 { font-size: 1rem; }

@media screen and (max-width: 768px) { .c-heading5 { font-size: 0.9rem; } }

.c-heading6 { font-size: 0.9rem; }

@media screen and (max-width: 768px) { .c-heading6 { font-size: 0.8rem; } }

.c-heading7 { font-size: 1.3rem; border-bottom: 3px solid #00a9c7; padding-bottom: 6px; }

@media screen and (max-width: 768px) { .c-heading7 { font-size: 1.25rem; } }

.c-heading-relation { font-size: 1rem; }

@media screen and (max-width: 768px) { .c-heading-relation { font-size: 0.9rem; } }

/******************************************************************
component - heading-news
******************************************************************/
.c-heading1news { font-size: 2rem; }

@media screen and (max-width: 768px) { .c-heading1news { font-size: 1.5rem; } }

.c-heading2news { font-size: 1.75rem; border-left: 5px solid #0164ac; padding-left: 10px; }

.c-heading2news:not(:first-child) { margin-top: 2rem; }

@media screen and (max-width: 768px) { .c-heading2news:not(:first-child) { margin-top: 1.5rem; } }

@media screen and (max-width: 768px) { .c-heading2news { font-size: 1.25rem; } }

.c-heading3news { font-size: 1.3rem; padding-bottom: 0.3em; border-bottom: 1px solid #d8d8d8; }

@media screen and (max-width: 768px) { .c-heading3news { font-size: 1.1rem; } }

/******************************************************************
component - lead
******************************************************************/
.c-lead1 { color: #007dc5; line-height: 1.3; font-size: 1.8rem; }

.c-lead1:not(:first-child) { margin-top: 2rem; }

@media screen and (max-width: 768px) { .c-lead1:not(:first-child) { margin-top: 1.5rem; } }

@media screen and (max-width: 768px) { .c-lead1 { font-size: 1.5rem; } }

.c-lead2 { color: #007dc5; font-size: 1.3rem; }

@media screen and (max-width: 768px) { .c-lead2 { font-size: 1.1rem; } }

.c-lead3 { line-height: 1.3; font-size: 1.8rem; }

.c-lead3:not(:first-child) { margin-top: 2rem; }

@media screen and (max-width: 768px) { .c-lead3:not(:first-child) { margin-top: 1.5rem; } }

@media screen and (max-width: 768px) { .c-lead3 { font-size: 1.5rem; } }

.c-lead4 { font-size: 1.3rem; }

@media screen and (max-width: 768px) { .c-lead4 { font-size: 1.1rem; } }

/******************************************************************
component - button
******************************************************************/
.c-button { color: inherit; text-decoration: none; display: inline-block; text-align: center; cursor: pointer; vertical-align: middle; box-sizing: border-box; border: 1px solid transparent; line-height: 1.5; padding: 0.5em 1.5em; }

.c-button:hover { color: inherit; text-decoration: none; }

.c-button--radius { border-radius: 6px; }

.c-button--circle { border-radius: 3em; }

.c-button--full { display: block; width: 100%; padding: 0.5em 1em; }

.c-button--item { background-color: #049db4; border-radius: 3em; padding: 0.25em 0.8em; min-width: 6em; color: #ffffff; font-size: 1rem; letter-spacing: 0; transition-property: background-color; transition-duration: 0.3s; }

@media screen and (max-width: 768px) { .c-button--item { font-size: 0.9rem; } }

.c-button--item:hover { color: #ffffff; background-color: #038396; }

@media screen and (max-width: 768px) { .c-button--item { font-size: 0.8rem; } }

@media screen and (max-width: 768px) and (max-width: 768px) { .c-button--item { font-size: 0.72rem; } }

.c-button--field { background-color: #0faf80; border-radius: 3em; padding: 0.25em 0.8em; min-width: 6em; color: #ffffff; font-size: 1rem; letter-spacing: 0; transition-property: background-color; transition-duration: 0.3s; }

@media screen and (max-width: 768px) { .c-button--field { font-size: 0.9rem; } }

.c-button--field:hover { color: #ffffff; background-color: #0d936b; }

@media screen and (max-width: 768px) { .c-button--field { font-size: 0.8rem; } }

@media screen and (max-width: 768px) and (max-width: 768px) { .c-button--field { font-size: 0.72rem; } }

.c-button--basic { border-radius: 3em; background: #ffffff; color: #0164ac; transition-property: background; transition-duration: 0.3s; }

.c-button--basic.is-active { color: #ffffff; background-color: #0164ac; }

.c-button--basic:hover:not(.is-active) { color: #0164ac; background-color: #f2f9fa; }

.c-button--basic-border { border-radius: 3em; background: #ffffff; color: #0164ac; transition-property: background; transition-duration: 0.3s; border: 1px solid #d8d8d8; }

.c-button--basic-border.is-active { color: #ffffff; background-color: #0164ac; }

.c-button--basic-border:hover:not(.is-active) { color: #0164ac; background-color: #f2f9fa; }

.c-button--radius-border { border-radius: 6px; background: #ffffff; color: #0164ac; transition-property: background; transition-duration: 0.3s; border: 1px solid #d8d8d8; }

.c-button--radius-border.is-active, .c-button--radius-border:hover { color: #0164ac; background-color: #f2f9fa; }

.c-button--form { background-color: #0164ac; border-radius: 3em; min-width: 8em; color: #ffffff; font-size: 1rem; letter-spacing: 0; transition-property: background-color; transition-duration: 0.3s; }

@media screen and (max-width: 768px) { .c-button--form { font-size: 0.9rem; } }

.c-button--form:hover { color: #ffffff; background-color: #01528e; }

@media screen and (max-width: 768px) { .c-button--form { font-size: 0.8rem; } }

@media screen and (max-width: 768px) and (max-width: 768px) { .c-button--form { font-size: 0.72rem; } }

.c-button--vertical { padding-left: 3em; padding-right: 3em; }

.c-button--product-search { padding-left: 0.5em; padding-right: 0.5em; letter-spacing: 0; }

.c-button:disabled { opacity: 0.6; cursor: not-allowed; }

/******************************************************************
component - badge
******************************************************************/
.c-badge { display: inline-block; text-align: center; vertical-align: 1px; box-sizing: border-box; line-height: 1; font-size: 0.85em; border: 1px solid transparent; padding: 0.35em 0.5em 0.25em; border-radius: 3px; }

.c-badge--full { display: block; width: 100%; }

.c-badge--new { color: #ffffff; background-color: #ff6406; }

.c-badge--popular { color: #ffffff; background-color: #0675ff; }

.c-badge--news { color: #000; background-color: #f1f5ff; border-color: #005de9; }

.c-badge--ir { color: #000; background-color: #fff8f0; border-color: #e87500; }

.c-badge--tenji { color: #000; background-color: #f7ebff; border-color: #601886; }

.c-badge--product { color: #000; background-color: #edffed; border-color: #00b600; }

.c-badge--csr { color: #000; background-color: #fff2fe; border-color: #dd3ed0; }

.c-badge--recruit { color: #000; background-color: #eefaff; border-color: #0095ca; }

.c-badge--other { color: #000; background-color: #ffffee; border-color: #d0c100; }

.c-badge--discontinued { color: #000; background-color: #f3f4f6; border-color: #3a5f8b; }

.c-badge--supportend { color: #000; background-color: #f5fcf5; border-color: #1c579d; }

.c-badge--toadkk { color: #ffffff; background-color: #007DC5; }

.c-badge--yamagata { color: #ffffff; background-color: #CCA328; }

.c-badge--sayama { color: #ffffff; background-color: #37612c; }

.c-badge--tokyo { color: #ffffff; background-color: #5d45ae; }

.c-badge--iwate { color: #ffffff; background-color: #eb41dd; }

.c-badge--require { color: #ffffff; background-color: #dc3545; font-size: 80%; border-radius: 3px; }

/******************************************************************
component - list
******************************************************************/
.c-list--left .c-list__item { margin-left: 1em; }

/******************************************************************
component - list-disc
******************************************************************/
.c-list-disc__item { margin-left: 1.2em; list-style: disc; }

/******************************************************************
component - list-order
******************************************************************/
.c-list-order__item { margin-left: 1.2em; list-style: decimal; }

/******************************************************************
component - list-notes
******************************************************************/
.c-list-notes { display: table; width: 100%; }

.c-list-notes--bordersand { border-top: 1px solid #d8d8d8; border-bottom: 1px solid #d8d8d8; padding-top: 0.8rem; padding-bottom: 0.8rem; }

@media screen and (max-width: 768px) { .c-list-notes--bordersand { padding-top: 0.6rem; padding-bottom: 0.6rem; } }

.c-list-notes--border > .c-list-notes__row:first-child:not(:last-child) > .c-list-notes__head, .c-list-notes--border > .c-list-notes__row:first-child:not(:last-child) > .c-list-notes__body { padding-bottom: 0.8rem; }

@media screen and (max-width: 768px) { .c-list-notes--border > .c-list-notes__row:first-child:not(:last-child) > .c-list-notes__head, .c-list-notes--border > .c-list-notes__row:first-child:not(:last-child) > .c-list-notes__body { padding-bottom: 0.6rem; } }

.c-list-notes--border > .c-list-notes__row:not(:first-child):not(:last-child) > .c-list-notes__head, .c-list-notes--border > .c-list-notes__row:not(:first-child):not(:last-child) > .c-list-notes__body { border-top: 1px solid #d8d8d8; padding-top: 0.8rem; padding-bottom: 0.8rem; }

@media screen and (max-width: 768px) { .c-list-notes--border > .c-list-notes__row:not(:first-child):not(:last-child) > .c-list-notes__head, .c-list-notes--border > .c-list-notes__row:not(:first-child):not(:last-child) > .c-list-notes__body { padding-top: 0.6rem; padding-bottom: 0.6rem; } }

.c-list-notes--border > .c-list-notes__row:not(:first-child):last-child > .c-list-notes__head, .c-list-notes--border > .c-list-notes__row:not(:first-child):last-child > .c-list-notes__body { border-top: 1px solid #d8d8d8; padding-top: 0.8rem; }

@media screen and (max-width: 768px) { .c-list-notes--border > .c-list-notes__row:not(:first-child):last-child > .c-list-notes__head, .c-list-notes--border > .c-list-notes__row:not(:first-child):last-child > .c-list-notes__body { padding-top: 0.6rem; } }

.c-list-notes__row { display: table-row; }

.c-list-notes__head { display: table-cell; white-space: nowrap; padding-right: 0.5em; width: 0.1%; vertical-align: top; }

.c-list-notes__head--define { width: 13%; }

.c-list-notes__head--wide { padding-right: 1.5em; }

.c-list-notes__body { display: table-cell; vertical-align: top; }

@media screen and (max-width: 768px) { .c-list-notes.sp-vertial { display: block; }
  .c-list-notes.sp-vertial > .c-list-notes__row { display: block; }
  .c-list-notes.sp-vertial > .c-list-notes__row > .c-list-notes__head { display: block; white-space: normal; padding-right: 0; width: auto !important; }
  .c-list-notes.sp-vertial > .c-list-notes__row > .c-list-notes__body { display: block; }
  .c-list-notes--border.sp-vertial > .c-list-notes__row:not(:first-child):not(:last-child) > .c-list-notes__body { border-top: 0; padding-top: 0; }
  .c-list-notes--border.sp-vertial > .c-list-notes__row:last-child > .c-list-notes__body { border-top: 0; }
  .c-list-notes--border.sp-vertial > .c-list-notes__row > .c-list-notes__head { padding-bottom: 0 !important; }
  .c-list-notes--border.sp-vertial > .c-list-notes__row > .c-list-notes__body { padding-top: 0 !important; } }

/******************************************************************
component - list-arrow
******************************************************************/
.c-list-arrow__item { position: relative; padding-left: 12.5px; padding-left: 1.2em; }

.c-list-arrow__item::after { position: absolute; content: ""; margin: auto; box-sizing: border-box; vertical-align: middle; top: 0; left: 0; transform: translate(12.5px, 0.8em) rotate(135deg); transform-origin: top left; border-top: 2px solid #10afba; border-left: 2px solid #10afba; width: 7px; height: 7px; transition-property: top, right, bottom, left; transition-duration: 0.3s; }

/******************************************************************
component - list-arrow-glid
******************************************************************/
.c-list-arrow-glid { display: flex; flex-wrap: wrap; margin-right: -1rem; }

.c-list-arrow-glid__item2 { width: calc( 50% - 1rem); margin-right: 1rem; box-sizing: border-box; position: relative; padding-left: 12.5px; padding-left: 1.2em; }

.c-list-arrow-glid__item2::after { position: absolute; content: ""; margin: auto; box-sizing: border-box; vertical-align: middle; top: 0; left: 0; transform: translate(12.5px, 0.8em) rotate(135deg); transform-origin: top left; border-top: 2px solid #10afba; border-left: 2px solid #10afba; width: 7px; height: 7px; transition-property: top, right, bottom, left; transition-duration: 0.3s; }

.c-list-arrow-glid__item2::after { top: -2px; }

.c-list-arrow-glid__item3 { width: calc( 33.33333% - 1rem); margin-right: 1rem; box-sizing: border-box; position: relative; padding-left: 12.5px; padding-left: 1.2em; }

.c-list-arrow-glid__item3::after { position: absolute; content: ""; margin: auto; box-sizing: border-box; vertical-align: middle; top: 0; left: 0; transform: translate(12.5px, 0.8em) rotate(135deg); transform-origin: top left; border-top: 2px solid #10afba; border-left: 2px solid #10afba; width: 7px; height: 7px; transition-property: top, right, bottom, left; transition-duration: 0.3s; }

.c-list-arrow-glid__item3::after { top: -2px; }

.c-list-arrow-glid__item4 { width: calc( 25% - 1rem); margin-right: 1rem; box-sizing: border-box; position: relative; padding-left: 12.5px; padding-left: 1.2em; }

.c-list-arrow-glid__item4::after { position: absolute; content: ""; margin: auto; box-sizing: border-box; vertical-align: middle; top: 0; left: 0; transform: translate(12.5px, 0.8em) rotate(135deg); transform-origin: top left; border-top: 2px solid #10afba; border-left: 2px solid #10afba; width: 7px; height: 7px; transition-property: top, right, bottom, left; transition-duration: 0.3s; }

.c-list-arrow-glid__item4::after { top: -2px; }

.c-list-arrow-glid__item5 { width: calc( 20% - 1rem); margin-right: 1rem; box-sizing: border-box; position: relative; padding-left: 12.5px; padding-left: 1.2em; }

.c-list-arrow-glid__item5::after { position: absolute; content: ""; margin: auto; box-sizing: border-box; vertical-align: middle; top: 0; left: 0; transform: translate(12.5px, 0.8em) rotate(135deg); transform-origin: top left; border-top: 2px solid #10afba; border-left: 2px solid #10afba; width: 7px; height: 7px; transition-property: top, right, bottom, left; transition-duration: 0.3s; }

.c-list-arrow-glid__item5::after { top: -2px; }

@media screen and (max-width: 768px) { .c-list-arrow-glid { flex-direction: column; margin-right: 0; }
  .c-list-arrow-glid__item2 { width: 100%; margin-right: 0; }
  .c-list-arrow-glid__item3 { width: 100%; margin-right: 0; }
  .c-list-arrow-glid__item4 { width: 100%; margin-right: 0; }
  .c-list-arrow-glid__item5 { width: 100%; margin-right: 0; } }

/******************************************************************
component - list-arrow-inline
******************************************************************/
.c-list-arrow-inline > *:not(:last-child) { margin-right: 1rem; }

@media screen and (max-width: 768px) { .c-list-arrow-inline > *:not(:last-child) { margin-right: 0.75rem; } }

.c-list-arrow-inline__item { display: inline-block; position: relative; padding-left: 12.5px; padding-left: 1.2em; }

.c-list-arrow-inline__item::after { position: absolute; content: ""; margin: auto; box-sizing: border-box; vertical-align: middle; top: 0; left: 0; transform: translate(12.5px, 0.9em) rotate(135deg); transform-origin: top left; border-top: 2px solid #10afba; border-left: 2px solid #10afba; width: 7px; height: 7px; transition-property: top, right, bottom, left; transition-duration: 0.3s; }

.c-list-arrow-inline__item--header { position: relative; padding-left: 12.5px; padding-left: 1.2em; }

.c-list-arrow-inline__item--header::after { position: absolute; content: ""; margin: auto; box-sizing: border-box; vertical-align: middle; top: 0; left: 0; transform: translate(12.5px, 0.7em) rotate(135deg); transform-origin: top left; border-top: 2px solid #10afba; border-left: 2px solid #10afba; width: 7px; height: 7px; transition-property: top, right, bottom, left; transition-duration: 0.3s; }

/******************************************************************
component - list-pdf
******************************************************************/
.c-list-pdf__item { padding-left: 1.3em; position: relative; }

.c-list-pdf__item::after { position: absolute; content: ""; margin: auto; box-sizing: border-box; vertical-align: middle; top: 0; bottom: 0; left: 0; width: 16px; height: 17px; background: url("/common/images/icn_pdf.gif") no-repeat center center; }

.c-list-pdf__item::after { top: 0.3em; bottom: auto; }

/******************************************************************
component - image
******************************************************************/
.c-image > a { display: inline-block; }

.c-image--center { text-align: center; }

.c-image--right { text-align: right; }

.c-image__title { display: block; text-align: left; line-height: 1.5; font-weight: bold; font-size: 1.2rem; line-height: 1.6; }

@media screen and (max-width: 768px) { .c-image__title { font-size: 1.08rem; } }

.c-image--center .c-image__title { margin-right: auto; margin-left: auto; }

.c-image--right .c-image__title { margin-left: auto; }

.c-image__caption { display: block; text-align: left; line-height: 1.5; }

.c-image--center .c-image__caption { margin-right: auto; margin-left: auto; }

.c-image--right .c-image__caption { margin-left: auto; }

.c-image img:not(:first-child) { margin-top: 0.5rem; }

@media screen and (max-width: 768px) { .c-image img:not(:first-child) { margin-top: 0.375rem; } }

.c-image img:not(:last-child) { margin-bottom: 0.5rem; }

@media screen and (max-width: 768px) { .c-image img:not(:last-child) { margin-bottom: 0.375rem; } }

/******************************************************************
component - image-row
******************************************************************/
.c-image-row { display: flex; flex-wrap: wrap; margin-right: -0.5rem; margin-left: -0.5rem; margin-bottom: -1rem; }

.c-image-row--center { justify-content: center; }

.c-image-row--right { justify-content: flex-end; }

.c-image-row__item { margin-right: 0.5rem; margin-left: 0.5rem; margin-bottom: 1rem; box-sizing: border-box; }

@media screen and (max-width: 768px) { .c-image-row:not(.sp-keep):not(.sp-grid) { flex-direction: column; margin-right: 0; margin-left: 0; margin-bottom: -0.75rem; }
  .c-image-row:not(.sp-keep):not(.sp-grid) > .c-image-row__item { width: 100%; margin-right: 0; margin-left: 0; margin-bottom: 0.75rem; text-align: center; }
  .c-image-row.sp-grid { flex-wrap: wrap; margin-right: -0.375rem; margin-left: -0.375rem; margin-bottom: -0.75rem; }
  .c-image-row.sp-grid > .c-image-row__item.sp-item2 { width: calc( 50% - 0.75rem); margin-right: 0.375rem; margin-left: 0.375rem; margin-bottom: 0.75rem; text-align: center; }
  .c-image-row.sp-grid > .c-image-row__item.sp-item3 { width: calc( 33.33333% - 0.75rem); margin-right: 0.375rem; margin-left: 0.375rem; margin-bottom: 0.75rem; text-align: center; }
  .c-image-row.sp-grid > .c-image-row__item.sp-item4 { width: calc( 25% - 0.75rem); margin-right: 0.375rem; margin-left: 0.375rem; margin-bottom: 0.75rem; text-align: center; }
  .c-image-row.sp-grid > .c-image-row__item.sp-item5 { width: calc( 20% - 0.75rem); margin-right: 0.375rem; margin-left: 0.375rem; margin-bottom: 0.75rem; text-align: center; }
  .c-image-row.sp-grid > .c-image-row__item.sp-item6 { width: calc( 16.66667% - 0.75rem); margin-right: 0.375rem; margin-left: 0.375rem; margin-bottom: 0.75rem; text-align: center; } }

/******************************************************************
component - text-row
******************************************************************/
.c-text-row { display: flex; }

.c-text-row--inline { display: inline-flex; }

.c-text-row--center { align-items: center; }

.c-text-row > .c-text-row__head-left { box-sizing: border-box; flex-shrink: 0; order: 1; margin-right: 1rem; }

.c-text-row > .c-text-row__head-right { box-sizing: border-box; flex-shrink: 0; order: 2; margin-left: 1rem; }

.c-text-row > .c-text-row__body-right { box-sizing: border-box; flex-grow: 1; order: 2; }

.c-text-row > .c-text-row__body-left { box-sizing: border-box; flex-grow: 1; order: 1; }

@media print, screen and (max-width: 800px) { .c-text-row > .c-text-row__head-left { max-width: 50%; }
  .c-text-row > .c-text-row__head-right { max-width: 50%; } }

@media screen and (max-width: 768px) { .c-text-row--center:not(.sp-keep) { align-items: flex-start; }
  .c-text-row--center:not(.sp-keep) > .c-text-row__head-left { width: 100%; }
  .c-text-row--center:not(.sp-keep) > .c-text-row__head-right { width: 100%; }
  .c-text-row--center:not(.sp-keep) > .c-text-row__body-right { width: 100%; }
  .c-text-row--center:not(.sp-keep) > .c-text-row__body-left { width: 100%; }
  .c-text-row:not(.sp-keep) { flex-direction: column; }
  .c-text-row:not(.sp-keep) > .c-text-row__head-left { margin-right: 0; margin-bottom: 0.75rem; text-align: center; max-width: none; }
  .c-text-row:not(.sp-keep).sp-bottom > .c-text-row__head-left { order: 2; margin-bottom: 0; margin-top: 0.75rem; }
  .c-text-row:not(.sp-keep) > .c-text-row__head-right { margin-left: 0; margin-bottom: 0.75rem; order: 1; text-align: center; max-width: none; }
  .c-text-row:not(.sp-keep).sp-bottom > .c-text-row__head-right { order: 2; margin-bottom: 0; margin-top: 0.75rem; }
  .c-text-row:not(.sp-keep).sp-bottom > .c-text-row__body-right { order: 1; }
  .c-text-row:not(.sp-keep) > .c-text-row__body-left { order: 2; }
  .c-text-row:not(.sp-keep).sp-bottom > .c-text-row__body-left { order: 1; }
  .c-text-row.sp-keep > .c-text-row__head-left { margin-right: 0.75rem; max-width: 40%; }
  .c-text-row.sp-keep > .c-text-row__head-right { margin-left: 0.75rem; max-width: 40%; } }

/******************************************************************
component - text-row2
******************************************************************/
.c-text-row2 { display: flex; }

.c-text-row2--inline { display: inline-flex; }

.c-text-row2--vertical { align-items: center; }

.c-text-row2 > .c-text-row2__head-left, .c-text-row2 > .c-text-row2__head-right { box-sizing: border-box; flex-shrink: 0; }

.c-text-row2 > .c-text-row2__head-left { margin-right: 1rem; order: 1; }

.c-text-row2 > .c-text-row2__head-right { margin-left: 1rem; order: 2; }

.c-text-row2 > .c-text-row2__body-right, .c-text-row2 > .c-text-row2__body-left { box-sizing: border-box; flex-grow: 1; }

.c-text-row2 > .c-text-row2__body-right { order: 2; }

.c-text-row2 > .c-text-row2__body-left { order: 1; }

@media print, screen and (max-width: 1000px) { .c-text-row2.l-column { flex-direction: column; }
  .c-text-row2.l-column--center { align-items: flex-start; }
  .c-text-row2.l-column > .c-text-row2__head-left, .c-text-row2.l-column > .c-text-row2__head-right { order: 1; margin-bottom: 1rem; margin-right: 0; margin-left: 0; text-align: center; width: 100%; max-width: none; }
  .c-text-row2.l-column > .c-text-row2__body-right, .c-text-row2.l-column > .c-text-row2__body-left { order: 2; width: 100%; }
  .c-text-row2.l-column.l-column-reverse > .c-text-row2__head-left, .c-text-row2.l-column.l-column-reverse > .c-text-row2__head-right { order: 2; margin-top: 1rem; margin-bottom: 0; }
  .c-text-row2.l-column.l-column-reverse > .c-text-row2__body-right, .c-text-row2.l-column.l-column-reverse > .c-text-row2__body-left { order: 1; } }

@media print, screen and (max-width: 800px) { .c-text-row2.m-column { flex-direction: column; }
  .c-text-row2.m-column--center { align-items: flex-start; }
  .c-text-row2.m-column > .c-text-row2__head-left, .c-text-row2.m-column > .c-text-row2__head-right { order: 1; margin-bottom: 1rem; margin-right: 0; margin-left: 0; text-align: center; width: 100%; max-width: none; }
  .c-text-row2.m-column > .c-text-row2__body-right, .c-text-row2.m-column > .c-text-row2__body-left { order: 2; width: 100%; }
  .c-text-row2.m-column.m-column-reverse > .c-text-row2__head-left, .c-text-row2.m-column.m-column-reverse > .c-text-row2__head-right { order: 2; margin-top: 1rem; margin-bottom: 0; }
  .c-text-row2.m-column.m-column-reverse > .c-text-row2__body-right, .c-text-row2.m-column.m-column-reverse > .c-text-row2__body-left { order: 1; } }

@media screen and (max-width: 768px) { .c-text-row2 > .c-text-row2__head-left { margin-right: 0.75rem; }
  .c-text-row2 > .c-text-row2__head-right { margin-left: 0.75rem; }
  .c-text-row2.sp-column { flex-direction: column; }
  .c-text-row2.sp-column--center { align-items: flex-start; }
  .c-text-row2.sp-column > .c-text-row2__head-left, .c-text-row2.sp-column > .c-text-row2__head-right { order: 1; margin-bottom: 0.75rem; margin-right: 0; margin-left: 0; text-align: center; width: 100%; max-width: none; }
  .c-text-row2.sp-column > .c-text-row2__body-right, .c-text-row2.sp-column > .c-text-row2__body-left { order: 2; width: 100%; }
  .c-text-row2.sp-column.sp-column-reverse > .c-text-row2__head-left, .c-text-row2.sp-column.sp-column-reverse > .c-text-row2__head-right { order: 2; margin-top: 0.75rem; margin-bottom: 0; }
  .c-text-row2.sp-column.sp-column-reverse > .c-text-row2__body-right, .c-text-row2.sp-column.sp-column-reverse > .c-text-row2__body-left { order: 1; } }

/******************************************************************
component - text-around
******************************************************************/
.c-text-around::after { content: ""; display: block; clear: both; }

.c-text-around > .c-text-around__image--left { display: block; float: left; margin-right: 1rem; margin-bottom: 1rem; }

.c-text-around > .c-text-around__image--right { display: block; float: right; margin-left: 1rem; margin-bottom: 1rem; }

@media print, screen and (max-width: 1200px) { .c-text-around > .c-text-around__image--left { max-width: 50%; }
  .c-text-around > .c-text-around__image--right { max-width: 50%; } }

@media screen and (max-width: 768px) { .c-text-around:not(.sp-keep) > .c-text-around__image--left { float: none; margin-right: 0; margin-bottom: 0.75rem; text-align: center; max-width: none; }
  .c-text-around:not(.sp-keep) > .c-text-around__image--right { float: none; margin-left: 0; margin-bottom: 0.75rem; text-align: center; max-width: none; }
  .c-text-around.sp-keep > .c-text-around__image--left { margin-right: 0.75rem; max-width: 40%; }
  .c-text-around.sp-keep > .c-text-around__image--right { margin-left: 0.75rem; max-width: 40%; } }

/******************************************************************
component - table
******************************************************************/
.c-table { width: 100%; }

.c-table--stripe *:not(thead) tr:nth-child(odd) { background-color: #fafafa; }

.c-table--stripe-even *:not(thead) tr:nth-child(even) { background-color: #fafafa; }

.c-table__caption { font-weight: bold; font-size: 1.2rem; line-height: 1.6; text-align: left; }

@media screen and (max-width: 768px) { .c-table__caption { font-size: 1.08rem; } }

@media screen and (max-width: 768px) { .c-table.sp-column { display: block; width: 100%; border-top: 1px solid #d8d8d8; }
  .c-table.sp-column tbody, .c-table.sp-column__data { display: block; width: 100%; border-top: 0; } }

.c-table__data { box-sizing: border-box; border: 1px solid #d8d8d8; text-align: left; padding-right: 1rem; padding-left: 1rem; padding-top: 0.75rem; padding-bottom: 0.75rem; }

@media screen and (max-width: 768px) { .c-table__data { padding-right: 0.75rem; padding-left: 0.75rem; } }

@media screen and (max-width: 768px) { .c-table__data { padding-top: 0.5625rem; padding-bottom: 0.5625rem; } }

.c-table__data--bg { background-color: #069eb9; color: #ffffff; }

.c-table__data--bg a { color: #ffffff; }

.c-table__data--bg-classic { background-color: #eef9ff; color: inherit; }

.c-table__data--bg-classic a { color: inherit; }

.c-table__data--bglight { background-color: #f6fbe4; }

.c-table__data--bglight-classic { background-color: #f5f7f8; }

/******************************************************************
component - table-scroll
******************************************************************/
.c-table-scroll { overflow-x: auto; }

.c-table-scroll::-webkit-scrollbar { width: 5px; background: #F1F1F1; }

.c-table-scroll::-webkit-scrollbar:horizontal { height: 5px; background: #F1F1F1; }

.c-table-scroll::-webkit-scrollbar-thumb { background: #BCBCBC; border-radius: 2px; }

.c-table-scroll::-webkit-scrollbar-thumb:horizontal { background: #BCBCBC; border-radius: 2px; }

@media screen and (max-width: 768px) { .c-sp-table-scroll { overflow-x: auto; }
  .c-sp-table-scroll::-webkit-scrollbar { width: 5px; background: #F1F1F1; }
  .c-sp-table-scroll::-webkit-scrollbar:horizontal { height: 5px; background: #F1F1F1; }
  .c-sp-table-scroll::-webkit-scrollbar-thumb { background: #BCBCBC; border-radius: 2px; }
  .c-sp-table-scroll::-webkit-scrollbar-thumb:horizontal { background: #BCBCBC; border-radius: 2px; } }

/******************************************************************
component - news-row
******************************************************************/
.c-news-row { display: table; width: 100%; }

.c-news-row--side .c-news-row__time { padding-left: 0.4rem; }

.c-news-row--side .c-news-row__body { padding-right: 0.4rem; }

.c-news-row--bordersand { border-top: 1px solid #d8d8d8; border-bottom: 1px solid #d8d8d8; padding-top: 0.8rem; padding-bottom: 0.8rem; }

@media screen and (max-width: 768px) { .c-news-row--bordersand { padding-top: 0.6rem; padding-bottom: 0.6rem; } }

.c-news-row--border .c-news-row__item:not(:first-child) .c-news-row__time, .c-news-row--border .c-news-row__item:not(:first-child) .c-news-row__body { border-top: 1px solid #d8d8d8; padding-top: 0.8rem; }

.c-news-row__item { display: table-row; }

.c-news-row__item:not(:last-child) .c-news-row__body { padding-bottom: 0.8rem; }

@media screen and (max-width: 768px) { .c-news-row__item:not(:last-child) .c-news-row__body { padding-bottom: 0.6rem; } }

.c-news-row__time { display: table-cell; vertical-align: top; white-space: nowrap; width: 1%; }

.c-news-row__body { display: table-cell; vertical-align: top; padding-left: 0.6rem; }

@media screen and (max-width: 768px) { .c-news-row { display: block; }
  .c-news-row--side .c-news-row__time { padding-right: 0.3rem; padding-left: 0.3rem; }
  .c-news-row--side .c-news-row__body { padding-right: 0.3rem; padding-left: 0.3rem; }
  .c-news-row--border .c-news-row__item:not(:first-child) .c-news-row__time { padding-top: 0.75rem; }
  .c-news-row--border .c-news-row__item:not(:first-child) .c-news-row__body { border-top: 0; padding-top: 0; }
  .c-news-row__item { display: block; }
  .c-news-row__time { display: block; width: auto; }
  .c-news-row__body { display: block; padding-left: 0; } }

/******************************************************************
component - news-icon-row
******************************************************************/
.c-news-icon-row { display: table; width: 100%; }

.c-news-icon-row--side .c-news-icon-row__time { padding-left: 0.4rem; }

.c-news-icon-row--side .c-news-icon-row__body { padding-right: 0.4rem; }

.c-news-icon-row--bordersand { border-top: 1px solid #d8d8d8; border-bottom: 1px solid #d8d8d8; padding-top: 0.8rem; padding-bottom: 0.8rem; }

@media screen and (max-width: 768px) { .c-news-icon-row--bordersand { padding-top: 0.6rem; padding-bottom: 0.6rem; } }

.c-news-icon-row--border .c-news-icon-row__item:not(:first-child) .c-news-icon-row__time, .c-news-icon-row--border .c-news-icon-row__item:not(:first-child) .c-news-icon-row__icon, .c-news-icon-row--border .c-news-icon-row__item:not(:first-child) .c-news-icon-row__body { border-top: 1px solid #d8d8d8; padding-top: 0.8rem; }

.c-news-icon-row__item { display: table-row; vertical-align: top; }

.c-news-icon-row__item:not(:last-child) .c-news-icon-row__body { padding-bottom: 0.8rem; }

@media screen and (max-width: 768px) { .c-news-icon-row__item:not(:last-child) .c-news-icon-row__body { padding-bottom: 0.6rem; } }

.c-news-icon-row__time { display: table-cell; vertical-align: top; white-space: nowrap; width: 1%; padding-right: 0.6rem; }

@media screen and (max-width: 768px) { .c-news-icon-row__time { padding-right: 0.45rem; } }

.c-news-icon-row__icon { display: table-cell; vertical-align: top; white-space: nowrap; width: 1%; }

.c-news-icon-row__icon > * { width: 100%; }

.c-news-icon-row__body { display: table-cell; vertical-align: top; padding-left: 0.6rem; }

@media screen and (max-width: 768px) { .c-news-icon-row { display: block; }
  .c-news-icon-row--side .c-news-icon-row__time { padding-left: 0.3rem; }
  .c-news-icon-row--side .c-news-icon-row__body { padding-right: 0.3rem; padding-left: 0.3rem; }
  .c-news-icon-row--border .c-news-icon-row__item:not(:first-child) .c-news-icon-row__time, .c-news-icon-row--border .c-news-icon-row__item:not(:first-child) .c-news-icon-row__icon, .c-news-icon-row--border .c-news-icon-row__item:not(:first-child) .c-news-icon-row__body { padding-top: 0.75rem; }
  .c-news-icon-row--border .c-news-icon-row__item:not(:first-child) .c-news-icon-row__body { border-top: 0; padding-top: 0; }
  .c-news-icon-row__item { display: block; }
  .c-news-icon-row__time { display: block; width: auto; float: left; }
  .c-news-icon-row__icon { display: block; width: auto; }
  .c-news-icon-row__icon > * { width: auto; }
  .c-news-icon-row__body { display: block; padding-left: 0; } }

/******************************************************************
component - forms-row
******************************************************************/
.c-forms-row { display: table; width: 100%; }

.c-forms-row--side .c-forms-row__head { padding-left: 1rem; }

.c-forms-row--side .c-forms-row__body { padding-right: 1rem; }

.c-forms-row--bordersand { border-top: 1px solid #d8d8d8; border-bottom: 1px solid #d8d8d8; }

.c-forms-row--bordersand .c-forms-row__item:first-child .c-forms-row__head, .c-forms-row--bordersand .c-forms-row__item:first-child .c-forms-row__body { padding-top: 1rem; }

.c-forms-row--bordersand .c-forms-row__item:last-child .c-forms-row__head, .c-forms-row--bordersand .c-forms-row__item:last-child .c-forms-row__body { padding-bottom: 1rem; }

.c-forms-row--border .c-forms-row__item:not(:first-child) .c-forms-row__head, .c-forms-row--border .c-forms-row__item:not(:first-child) .c-forms-row__body { border-top: 1px solid #d8d8d8; padding-top: 1rem; }

.c-forms-row--stripe .c-forms-row__item:nth-child(odd) { background-color: #ecefef; }

.c-forms-row--stripe .c-forms-row__head, .c-forms-row--stripe .c-forms-row__body { padding-top: 1rem; }

.c-forms-row--stripe .c-forms-row__item:last-child .c-forms-row__head, .c-forms-row--stripe .c-forms-row__item:last-child .c-forms-row__body { padding-bottom: 1rem; }

.c-forms-row--stripe-even .c-forms-row__item:nth-child(even) { background-color: #ecefef; }

.c-forms-row--stripe-even .c-forms-row__item:not(:first-child) .c-forms-row__head, .c-forms-row--stripe-even .c-forms-row__item:not(:first-child) .c-forms-row__body { padding-top: 1rem; }

.c-forms-row--stripe-even .c-forms-row__item:last-child .c-forms-row__head, .c-forms-row--stripe-even .c-forms-row__item:last-child .c-forms-row__body { padding-bottom: 1rem; }

.c-forms-row__item { display: table-row; }

.c-forms-row__item:not(:last-child) .c-forms-row__head, .c-forms-row__item:not(:last-child) .c-forms-row__body { padding-bottom: 1rem; }

.c-forms-row__head { display: table-cell; vertical-align: top; width: 26%; min-width: 26%; padding-right: 1rem; }

.c-forms-row__head > :first-child { padding-top: 0.25em; }

.c-forms-row__title { display: block; font-weight: bold; }

.c-forms-row__body { display: table-cell; vertical-align: top; }

@media screen and (max-width: 768px) { .c-forms-row { display: block; }
  .c-forms-row--side .c-forms-row__head { padding-right: 0.75rem; padding-left: 0.75rem; }
  .c-forms-row--side .c-forms-row__body { padding-right: 0.75rem; padding-left: 0.75rem; }
  .c-forms-row--bordersand .c-forms-row__item:first-child .c-forms-row__head { padding-top: 0.75rem; }
  .c-forms-row--bordersand .c-forms-row__item:first-child .c-forms-row__body { padding-top: 0; }
  .c-forms-row--bordersand .c-forms-row__item:last-child .c-forms-row__head { padding-bottom: 0; }
  .c-forms-row--bordersand .c-forms-row__item:last-child .c-forms-row__body { padding-bottom: 0.75rem; }
  .c-forms-row--border .c-forms-row__item:not(:first-child) .c-forms-row__head { padding-top: 0.75rem; }
  .c-forms-row--border .c-forms-row__item:not(:first-child) .c-forms-row__body { border-top: 0; padding-top: 0; }
  .c-forms-row--stripe .c-forms-row__head { padding-top: 0.75rem; }
  .c-forms-row--stripe .c-forms-row__body { padding-top: 0; }
  .c-forms-row--stripe .c-forms-row__item:last-child .c-forms-row__head { padding-bottom: 0; }
  .c-forms-row--stripe .c-forms-row__item:last-child .c-forms-row__body { padding-bottom: 0.75rem; }
  .c-forms-row--stripe-even .c-forms-row__item:nth-child(even) { background-color: #ecefef; }
  .c-forms-row--stripe-even .c-forms-row__item:not(:first-child) .c-forms-row__head { padding-top: 0.75rem; }
  .c-forms-row--stripe-even .c-forms-row__item:not(:first-child) .c-forms-row__body { padding-top: 0; }
  .c-forms-row--stripe-even .c-forms-row__item:last-child .c-forms-row__head { padding-bottom: 0; }
  .c-forms-row--stripe-even .c-forms-row__item:last-child .c-forms-row__body { padding-bottom: 0.75rem; }
  .c-forms-row__item { display: block; }
  .c-forms-row__item:not(:last-child) .c-forms-row__head { padding-bottom: 0; }
  .c-forms-row__item:not(:last-child) .c-forms-row__body { padding-bottom: 0.75rem; }
  .c-forms-row__head { display: block; width: auto; min-width: 0; padding-right: 0; }
  .c-forms-row__head > :first-child { padding-top: 0; }
  .c-forms-row__body { display: block; } }

/******************************************************************
component - form-control
******************************************************************/
input.c-form-control, textarea.c-form-control { -webkit-appearance: none; }

.c-form-control { box-sizing: border-box; vertical-align: middle; padding: 0.25em 0.5em; background-color: #ffffff; border-radius: 6px; border: 1px solid #d8d8d8; transition: border-color .15s ease-in-out,box-shadow .15s ease-in-out; }

select.c-form-control { height: calc(1.8em + ($form-gutter-vertical*2) + 2px); }

.c-form-control:disabled { background: #EEE; opacity: 0.6; cursor: not-allowed; }

.c-form-control.is-valid { border: 1px solid #76c26e; background: #f6fef2; }

.c-form-control.is-invalid { border: 1px solid #f17995; background: #fff1f1; }

.c-form-control:focus { border-color: #cccccc; box-shadow: 0 0 2px 3px rgba(204, 204, 204, 0.25); outline: 0; }

.c-form-control--full { display: block; width: 100%; }

.c-form-control--multiple { width: 100%; height: 12em; }

.c-form-control--circle { border-radius: 5em; padding: 0.25em 1em; }

.c-invalid { color: #f40940; }

@media screen and (max-width: 768px) { .c-sp-form-control--full { display: block; width: 100%; }
  .c-sp-form-control--full select { width: 100%; } }

/******************************************************************
component - check-control
******************************************************************/
.c-check-control--row { display: inline-block; margin-right: 0.75em; }

.c-check-control [type="checkbox"], .c-check-control [type="radio"] { margin-right: 0.3em; vertical-align: middle; }

/******************************************************************
component - check-style
******************************************************************/
.c-check-style { min-height: 25px; }

.c-check-style--row { display: inline-block; margin-right: 0.75em; }

.c-check-style [type="checkbox"], .c-check-style [type="radio"] { display: none; }

.c-check-style__checkbox, .c-check-style [type="checkbox"] + * { position: relative; padding-left: calc(25px + 0.5em); }

.c-check-style__checkbox::before, .c-check-style__checkbox::after, .c-check-style [type="checkbox"] + *::before, .c-check-style [type="checkbox"] + *::after { position: absolute; content: ""; margin: auto; box-sizing: border-box; vertical-align: middle; }

.c-check-style__checkbox::before, .c-check-style [type="checkbox"] + *::before { top: 0; bottom: 0; left: 0; width: 25px; height: 25px; border: 1px solid #d8d8d8; border-radius: 2px; }

.c-check-style__checkbox::after, .c-check-style [type="checkbox"] + *::after { top: 0; bottom: -2.5px; left: 7.5px; width: 10px; height: 15px; border-bottom: 3px solid #0164ac; border-right: 3px solid #0164ac; transition-duration: 0.2s; transform: rotate(40deg) scale(0); }

.c-check-style [type="checkbox"]:checked + *::after { bottom: 2.5px; transform: rotate(40deg) scale(1); }

.c-check-style.is-active .c-check-style__checkbox::after { bottom: 2.5px; transform: rotate(40deg) scale(1); }

.c-check-style [type="checkbox"]:disabled + * { opacity: 0.6; cursor: not-allowed; }

.c-check-style [type="checkbox"]:disabled + *::before { background: #EEE; }

.c-check-style.is-valid [type="checkbox"] + * { color: #448e3c; }

.c-check-style.is-valid [type="checkbox"] + *::before { border-color: #76c26e; background: #f6fef2; }

.c-check-style.is-valid [type="checkbox"] + *::after { border-color: #448e3c; }

.c-check-style.is-invalid [type="checkbox"] + * { color: #e71d4c; }

.c-check-style.is-invalid [type="checkbox"] + *::before { border-color: #f17995; background: #fff1f1; }

.c-check-style.is-invalid [type="checkbox"] + *::after { border-color: #e71d4c; }

.c-check-style__radio, .c-check-style [type="radio"] + * { position: relative; padding-left: calc(25px + 0.5em); }

.c-check-style__radio::before, .c-check-style__radio::after, .c-check-style [type="radio"] + *::before, .c-check-style [type="radio"] + *::after { position: absolute; content: ""; margin: auto; box-sizing: border-box; vertical-align: middle; border-radius: 100%; }

.c-check-style__radio::before, .c-check-style [type="radio"] + *::before { top: 0; bottom: 0; left: 0; width: 25px; height: 25px; border: 1px solid #d8d8d8; }

.c-check-style__radio::after, .c-check-style [type="radio"] + *::after { top: 0; bottom: 0; left: 5px; width: 15px; height: 15px; background-color: #0164ac; transition-duration: 0.2s; transform: scale(0); }

.c-check-style [type="radio"]:checked + *::after { transform: scale(1); }

.c-check-style.is-active .c-check-style__radio::after { transform: scale(1); }

.c-check-style [type="radio"]:disabled + * { opacity: 0.6; cursor: not-allowed; }

.c-check-style [type="radio"]:disabled + *::before { background: #EEE; }

.c-check-style.is-valid [type="radio"] + * { color: #448e3c; }

.c-check-style.is-valid [type="radio"] + *::before { border-color: #76c26e; background: #f6fef2; }

.c-check-style.is-valid [type="radio"] + *::after { background: #448e3c; }

.c-check-style.is-invalid [type="radio"] + * { color: #e71d4c; }

.c-check-style.is-invalid [type="radio"] + *::before { border-color: #f17995; background: #fff1f1; }

.c-check-style.is-invalid [type="radio"] + *::after { background: #e71d4c; }

/******************************************************************
component - select-style
******************************************************************/
.c-select-style { display: inline-block; position: relative; box-sizing: border-box; background-color: #ffffff; border-radius: 6px; border: 1px solid #d8d8d8; }

.c-select-style::before { content: ""; position: absolute; margin: auto; top: 0; bottom: 0.3em; right: 0.9em; width: 5px; height: 5px; border-top: 2px solid #0164ac; border-right: 2px solid #0164ac; transform: rotate(135deg); }

.c-select-style.is-valid { border: 1px solid #76c26e; background: #f6fef2; }

.c-select-style.is-invalid { border: 1px solid #f17995; background: #fff1f1; }

.c-select-style--full { display: block; width: 100%; }

.c-select-style select { box-sizing: border-box; width: 100%; vertical-align: middle; padding: 0.25em 1.9em 0.25em 0.5em; border: 0; transition: border-color .15s ease-in-out,box-shadow .15s ease-in-out; background: transparent; position: relative; z-index: +1; -moz-appearance: none; -webkit-appearance: none; appearance: none; }

.c-select-style select::-ms-expand { display: none; }

.c-select-style select:disabled { background: #EEE; opacity: 0.6; cursor: not-allowed; }

.c-select-style select:focus { border-color: #cccccc; box-shadow: 0 0 2px 3px rgba(204, 204, 204, 0.25); outline: 0; }

@media screen and (max-width: 768px) { .c-sp-select-style--full { display: block; width: 100%; }
  .c-sp-select-style--full select { width: 100%; } }

/******************************************************************
component - card
******************************************************************/
.c-card { display: flex; flex-direction: column; border: 1px solid #d8d8d8; }

a.c-card { color: inherit; text-decoration: none; }

a.c-card:hover { color: inherit; text-decoration: none; }

.c-card--borderless { border: 0 !important; }

.c-card--bordersand { border-left: 0 !important; border-right: 0 !important; }

.c-card--overlap + .c-card { border-top: 0 !important; }

.c-card--radius { border-radius: 6px; }

.c-card--radius .c-card__head, .c-card--radius .c-card__headimage img { border-top-right-radius: 6px; border-top-left-radius: 6px; }

.c-card--radius .c-card__body { border-bottom-right-radius: 6px; border-bottom-left-radius: 6px; }

.c-card--bglight-type1 { background-color: #f4fafe; }

.c-card--bglight-type1 .c-card__head { background-color: #e6f4fd; }

.c-card--bglight-type2 { background-color: #f0f0f0; }

.c-card--bglight-type2 .c-card__head { background-color: #e8e8e8; }

.c-card--border-type1 { border: 1px solid #9ec2d7; }

.c-card--border-type1 .c-card__head { border-bottom: 1px solid #9ec2d7; }

.c-card--border-type2 { border: 1px solid #dcdcdc; }

.c-card--border-type2 .c-card__head { border-bottom: 1px solid #dcdcdc; }

.c-card__head { order: 1; padding-top: 0.75rem; padding-bottom: 0.75rem; padding-right: 1rem; padding-left: 1rem; border-bottom: 1px solid #d8d8d8; }

@media screen and (max-width: 768px) { .c-card__head { padding-top: 0.5625rem; padding-bottom: 0.5625rem; } }

@media screen and (max-width: 768px) { .c-card__head { padding-right: 0.75rem; padding-left: 0.75rem; } }

.c-card__head--borderless { border-bottom: 0 !important; }

.c-card__head--bglight-type1 { background-color: #f4fafe; }

.c-card__head--bglight-type2 { background-color: #f0f0f0; }

.c-card__heading { font-weight: bold; font-size: 1.2rem; line-height: 1.6; }

@media screen and (max-width: 768px) { .c-card__heading { font-size: 1.08rem; } }

.c-card__body { order: 2; padding: 1rem; }

@media screen and (max-width: 768px) { .c-card__body { padding: 0.75rem; } }

.c-card__title { font-weight: bold; font-size: 1rem; line-height: 1.6; }

@media screen and (max-width: 768px) { .c-card__title { font-size: 0.9rem; } }

.c-card__subtitle { font-weight: bold; font-size: 0.9rem; line-height: 1.6; opacity: 0.8; }

@media screen and (max-width: 768px) { .c-card__subtitle { font-size: 0.81rem; } }

.c-card__headimage { order: 1; text-align: center; min-height: 0%; }

/******************************************************************
component - vertical-area
******************************************************************/
/******************************************************************
component - vertical-area
******************************************************************/
.c-vertical-area { position: absolute; z-index: +1; top: 0; left: 0; width: 100%; height: 100%; display: flex; align-items: center; }

.c-vertical-area--top { align-items: flex-start; }

.c-vertical-area--bottom { align-items: flex-end; }

.c-vertical-area__inner { box-sizing: border-box; width: 100%; }

/******************************************************************
component - feature-ratio
******************************************************************/
.c-feature-ratio { position: relative; padding-top: 75%; box-sizing: border-box; background-position: center center; background-repeat: no-repeat; background-size: cover; }

.c-feature-ratio--cattop { padding-top: 28.57143%; }

@media screen and (max-width: 768px) { .c-feature-ratio--cattop { padding-top: 45.45455%; } }

.c-feature-ratio--wide { padding-top: 56.25%; }

.c-feature-ratio--cinema { padding-top: 42.55319%; }

.c-feature-ratio--square { padding-top: 100%; }

@media screen and (max-width: 768px) { .c-feature-ratio.sp-standard { padding-top: 75%; }
  .c-feature-ratio.sp-wide { padding-top: 56.25%; }
  .c-feature-ratio.sp-cinema { padding-top: 42.55319%; }
  .c-feature-ratio.sp-square { padding-top: 100%; } }

/******************************************************************
component - grid
******************************************************************/
.c-grid { display: flex; flex-wrap: wrap; margin-right: -1rem; margin-bottom: -1rem; }

.c-grid--center { justify-content: center; }

.c-grid--right { justify-content: flex-end; }

.c-grid > .c-grid__item1 { position: relative; box-sizing: border-box; width: calc( 8.33333% - 1rem); margin-right: 1rem; margin-bottom: 1rem; }

.c-grid > .c-grid__item2 { position: relative; box-sizing: border-box; width: calc( 16.66667% - 1rem); margin-right: 1rem; margin-bottom: 1rem; }

.c-grid > .c-grid__item3 { position: relative; box-sizing: border-box; width: calc( 25% - 1rem); margin-right: 1rem; margin-bottom: 1rem; }

.c-grid > .c-grid__item4 { position: relative; box-sizing: border-box; width: calc( 33.33333% - 1rem); margin-right: 1rem; margin-bottom: 1rem; }

.c-grid > .c-grid__item5 { position: relative; box-sizing: border-box; width: calc( 41.66667% - 1rem); margin-right: 1rem; margin-bottom: 1rem; }

.c-grid > .c-grid__item6 { position: relative; box-sizing: border-box; width: calc( 50% - 1rem); margin-right: 1rem; margin-bottom: 1rem; }

.c-grid > .c-grid__item7 { position: relative; box-sizing: border-box; width: calc( 58.33333% - 1rem); margin-right: 1rem; margin-bottom: 1rem; }

.c-grid > .c-grid__item8 { position: relative; box-sizing: border-box; width: calc( 66.66667% - 1rem); margin-right: 1rem; margin-bottom: 1rem; }

.c-grid > .c-grid__item9 { position: relative; box-sizing: border-box; width: calc( 75% - 1rem); margin-right: 1rem; margin-bottom: 1rem; }

.c-grid > .c-grid__item10 { position: relative; box-sizing: border-box; width: calc( 83.33333% - 1rem); margin-right: 1rem; margin-bottom: 1rem; }

.c-grid > .c-grid__item11 { position: relative; box-sizing: border-box; width: calc( 91.66667% - 1rem); margin-right: 1rem; margin-bottom: 1rem; }

.c-grid > .c-grid__item12 { position: relative; box-sizing: border-box; width: calc( 100% - 1rem); margin-right: 1rem; margin-bottom: 1rem; }

.c-grid > .c-grid__item5col { position: relative; box-sizing: border-box; width: calc( 20% - 1rem); margin-right: 1rem; margin-bottom: 1rem; }

.c-grid--vertical > .c-grid__item1 { display: flex; align-items: center; }

.c-grid--vertical > .c-grid__item2 { display: flex; align-items: center; }

.c-grid--vertical > .c-grid__item3 { display: flex; align-items: center; }

.c-grid--vertical > .c-grid__item4 { display: flex; align-items: center; }

.c-grid--vertical > .c-grid__item5 { display: flex; align-items: center; }

.c-grid--vertical > .c-grid__item6 { display: flex; align-items: center; }

.c-grid--vertical > .c-grid__item7 { display: flex; align-items: center; }

.c-grid--vertical > .c-grid__item8 { display: flex; align-items: center; }

.c-grid--vertical > .c-grid__item9 { display: flex; align-items: center; }

.c-grid--vertical > .c-grid__item10 { display: flex; align-items: center; }

.c-grid--vertical > .c-grid__item11 { display: flex; align-items: center; }

.c-grid--vertical > .c-grid__item12 { display: flex; align-items: center; }

.c-grid--vertical > .c-grid__item5col { display: flex; align-items: center; }

@media screen and (max-width: 768px) { .c-grid:not(.sp-keep) { flex-direction: column; margin-right: 0; margin-bottom: -0.75rem; }
  .c-grid:not(.sp-keep) > .c-grid__item1 { width: 100%; margin-right: 0; margin-bottom: 0.75rem; }
  .c-grid:not(.sp-keep) > .c-grid__item2 { width: 100%; margin-right: 0; margin-bottom: 0.75rem; }
  .c-grid:not(.sp-keep) > .c-grid__item3 { width: 100%; margin-right: 0; margin-bottom: 0.75rem; }
  .c-grid:not(.sp-keep) > .c-grid__item4 { width: 100%; margin-right: 0; margin-bottom: 0.75rem; }
  .c-grid:not(.sp-keep) > .c-grid__item5 { width: 100%; margin-right: 0; margin-bottom: 0.75rem; }
  .c-grid:not(.sp-keep) > .c-grid__item6 { width: 100%; margin-right: 0; margin-bottom: 0.75rem; }
  .c-grid:not(.sp-keep) > .c-grid__item7 { width: 100%; margin-right: 0; margin-bottom: 0.75rem; }
  .c-grid:not(.sp-keep) > .c-grid__item8 { width: 100%; margin-right: 0; margin-bottom: 0.75rem; }
  .c-grid:not(.sp-keep) > .c-grid__item9 { width: 100%; margin-right: 0; margin-bottom: 0.75rem; }
  .c-grid:not(.sp-keep) > .c-grid__item10 { width: 100%; margin-right: 0; margin-bottom: 0.75rem; }
  .c-grid:not(.sp-keep) > .c-grid__item11 { width: 100%; margin-right: 0; margin-bottom: 0.75rem; }
  .c-grid:not(.sp-keep) > .c-grid__item12 { width: 100%; margin-right: 0; margin-bottom: 0.75rem; }
  .c-grid:not(.sp-keep) > .c-grid__item5col { width: 100%; margin-right: 0; margin-bottom: 0.75rem; }
  .c-grid.sp-keep { margin-right: -0.75rem; margin-bottom: -0.75rem; }
  .c-grid.sp-keep > .c-grid__item1 { width: calc( 8.33333% - 0.75rem); margin-right: 0.75rem; margin-bottom: 0.75rem; }
  .c-grid.sp-keep > .c-grid__item2 { width: calc( 16.66667% - 0.75rem); margin-right: 0.75rem; margin-bottom: 0.75rem; }
  .c-grid.sp-keep > .c-grid__item3 { width: calc( 25% - 0.75rem); margin-right: 0.75rem; margin-bottom: 0.75rem; }
  .c-grid.sp-keep > .c-grid__item4 { width: calc( 33.33333% - 0.75rem); margin-right: 0.75rem; margin-bottom: 0.75rem; }
  .c-grid.sp-keep > .c-grid__item5 { width: calc( 41.66667% - 0.75rem); margin-right: 0.75rem; margin-bottom: 0.75rem; }
  .c-grid.sp-keep > .c-grid__item6 { width: calc( 50% - 0.75rem); margin-right: 0.75rem; margin-bottom: 0.75rem; }
  .c-grid.sp-keep > .c-grid__item7 { width: calc( 58.33333% - 0.75rem); margin-right: 0.75rem; margin-bottom: 0.75rem; }
  .c-grid.sp-keep > .c-grid__item8 { width: calc( 66.66667% - 0.75rem); margin-right: 0.75rem; margin-bottom: 0.75rem; }
  .c-grid.sp-keep > .c-grid__item9 { width: calc( 75% - 0.75rem); margin-right: 0.75rem; margin-bottom: 0.75rem; }
  .c-grid.sp-keep > .c-grid__item10 { width: calc( 83.33333% - 0.75rem); margin-right: 0.75rem; margin-bottom: 0.75rem; }
  .c-grid.sp-keep > .c-grid__item11 { width: calc( 91.66667% - 0.75rem); margin-right: 0.75rem; margin-bottom: 0.75rem; }
  .c-grid.sp-keep > .c-grid__item12 { width: calc( 100% - 0.75rem); margin-right: 0.75rem; margin-bottom: 0.75rem; }
  .c-grid.sp-keep > .c-grid__item5col { width: calc( 20% - 0.75rem); margin-right: 0.75rem; margin-bottom: 0.75rem; }
  .c-grid.sp-keep > .sp-item1 { width: calc( 8.33333% - 0.75rem); margin-right: 0.75rem; margin-bottom: 0.75rem; }
  .c-grid.sp-keep > .sp-item2 { width: calc( 16.66667% - 0.75rem); margin-right: 0.75rem; margin-bottom: 0.75rem; }
  .c-grid.sp-keep > .sp-item3 { width: calc( 25% - 0.75rem); margin-right: 0.75rem; margin-bottom: 0.75rem; }
  .c-grid.sp-keep > .sp-item4 { width: calc( 33.33333% - 0.75rem); margin-right: 0.75rem; margin-bottom: 0.75rem; }
  .c-grid.sp-keep > .sp-item5 { width: calc( 41.66667% - 0.75rem); margin-right: 0.75rem; margin-bottom: 0.75rem; }
  .c-grid.sp-keep > .sp-item6 { width: calc( 50% - 0.75rem); margin-right: 0.75rem; margin-bottom: 0.75rem; }
  .c-grid.sp-keep > .sp-item7 { width: calc( 58.33333% - 0.75rem); margin-right: 0.75rem; margin-bottom: 0.75rem; }
  .c-grid.sp-keep > .sp-item8 { width: calc( 66.66667% - 0.75rem); margin-right: 0.75rem; margin-bottom: 0.75rem; }
  .c-grid.sp-keep > .sp-item9 { width: calc( 75% - 0.75rem); margin-right: 0.75rem; margin-bottom: 0.75rem; }
  .c-grid.sp-keep > .sp-item10 { width: calc( 83.33333% - 0.75rem); margin-right: 0.75rem; margin-bottom: 0.75rem; }
  .c-grid.sp-keep > .sp-item11 { width: calc( 91.66667% - 0.75rem); margin-right: 0.75rem; margin-bottom: 0.75rem; }
  .c-grid.sp-keep > .sp-item12 { width: calc( 100% - 0.75rem); margin-right: 0.75rem; margin-bottom: 0.75rem; }
  .c-grid.sp-keep > .sp-item5col { width: calc( 20% - 0.75rem); margin-right: 0.75rem; margin-bottom: 0.75rem; } }

.c-grid--2l { margin-right: -1.5rem; margin-bottom: -1.5rem; }

.c-grid--2l > .c-grid__item1 { width: calc( 8.33333% - 1.5rem); margin-right: 1.5rem; margin-bottom: 1.5rem; }

.c-grid--2l > .c-grid__item2 { width: calc( 16.66667% - 1.5rem); margin-right: 1.5rem; margin-bottom: 1.5rem; }

.c-grid--2l > .c-grid__item3 { width: calc( 25% - 1.5rem); margin-right: 1.5rem; margin-bottom: 1.5rem; }

.c-grid--2l > .c-grid__item4 { width: calc( 33.33333% - 1.5rem); margin-right: 1.5rem; margin-bottom: 1.5rem; }

.c-grid--2l > .c-grid__item5 { width: calc( 41.66667% - 1.5rem); margin-right: 1.5rem; margin-bottom: 1.5rem; }

.c-grid--2l > .c-grid__item6 { width: calc( 50% - 1.5rem); margin-right: 1.5rem; margin-bottom: 1.5rem; }

.c-grid--2l > .c-grid__item7 { width: calc( 58.33333% - 1.5rem); margin-right: 1.5rem; margin-bottom: 1.5rem; }

.c-grid--2l > .c-grid__item8 { width: calc( 66.66667% - 1.5rem); margin-right: 1.5rem; margin-bottom: 1.5rem; }

.c-grid--2l > .c-grid__item9 { width: calc( 75% - 1.5rem); margin-right: 1.5rem; margin-bottom: 1.5rem; }

.c-grid--2l > .c-grid__item10 { width: calc( 83.33333% - 1.5rem); margin-right: 1.5rem; margin-bottom: 1.5rem; }

.c-grid--2l > .c-grid__item11 { width: calc( 91.66667% - 1.5rem); margin-right: 1.5rem; margin-bottom: 1.5rem; }

.c-grid--2l > .c-grid__item12 { width: calc( 100% - 1.5rem); margin-right: 1.5rem; margin-bottom: 1.5rem; }

.c-grid--2l > .c-grid__item5col { width: calc( 20% - 1.5rem); margin-right: 1.5rem; margin-bottom: 1.5rem; }

@media screen and (max-width: 768px) { .c-grid--2l:not(.sp-keep) { margin-bottom: -1.125rem; }
  .c-grid--2l:not(.sp-keep) > .c-grid__item1 { margin-bottom: 1.125rem; }
  .c-grid--2l:not(.sp-keep) > .c-grid__item2 { margin-bottom: 1.125rem; }
  .c-grid--2l:not(.sp-keep) > .c-grid__item3 { margin-bottom: 1.125rem; }
  .c-grid--2l:not(.sp-keep) > .c-grid__item4 { margin-bottom: 1.125rem; }
  .c-grid--2l:not(.sp-keep) > .c-grid__item5 { margin-bottom: 1.125rem; }
  .c-grid--2l:not(.sp-keep) > .c-grid__item6 { margin-bottom: 1.125rem; }
  .c-grid--2l:not(.sp-keep) > .c-grid__item7 { margin-bottom: 1.125rem; }
  .c-grid--2l:not(.sp-keep) > .c-grid__item8 { margin-bottom: 1.125rem; }
  .c-grid--2l:not(.sp-keep) > .c-grid__item9 { margin-bottom: 1.125rem; }
  .c-grid--2l:not(.sp-keep) > .c-grid__item10 { margin-bottom: 1.125rem; }
  .c-grid--2l:not(.sp-keep) > .c-grid__item11 { margin-bottom: 1.125rem; }
  .c-grid--2l:not(.sp-keep) > .c-grid__item12 { margin-bottom: 1.125rem; }
  .c-grid--2l:not(.sp-keep) > .c-grid__item5col { margin-bottom: 1.125rem; }
  .c-grid--2l.sp-keep { margin-right: -1.125rem; margin-bottom: -1.125rem; }
  .c-grid--2l.sp-keep > .c-grid__item1 { width: calc( 8.33333% - 1.125rem); margin-right: 1.125rem; margin-bottom: 1.125rem; }
  .c-grid--2l.sp-keep > .c-grid__item2 { width: calc( 16.66667% - 1.125rem); margin-right: 1.125rem; margin-bottom: 1.125rem; }
  .c-grid--2l.sp-keep > .c-grid__item3 { width: calc( 25% - 1.125rem); margin-right: 1.125rem; margin-bottom: 1.125rem; }
  .c-grid--2l.sp-keep > .c-grid__item4 { width: calc( 33.33333% - 1.125rem); margin-right: 1.125rem; margin-bottom: 1.125rem; }
  .c-grid--2l.sp-keep > .c-grid__item5 { width: calc( 41.66667% - 1.125rem); margin-right: 1.125rem; margin-bottom: 1.125rem; }
  .c-grid--2l.sp-keep > .c-grid__item6 { width: calc( 50% - 1.125rem); margin-right: 1.125rem; margin-bottom: 1.125rem; }
  .c-grid--2l.sp-keep > .c-grid__item7 { width: calc( 58.33333% - 1.125rem); margin-right: 1.125rem; margin-bottom: 1.125rem; }
  .c-grid--2l.sp-keep > .c-grid__item8 { width: calc( 66.66667% - 1.125rem); margin-right: 1.125rem; margin-bottom: 1.125rem; }
  .c-grid--2l.sp-keep > .c-grid__item9 { width: calc( 75% - 1.125rem); margin-right: 1.125rem; margin-bottom: 1.125rem; }
  .c-grid--2l.sp-keep > .c-grid__item10 { width: calc( 83.33333% - 1.125rem); margin-right: 1.125rem; margin-bottom: 1.125rem; }
  .c-grid--2l.sp-keep > .c-grid__item11 { width: calc( 91.66667% - 1.125rem); margin-right: 1.125rem; margin-bottom: 1.125rem; }
  .c-grid--2l.sp-keep > .c-grid__item12 { width: calc( 100% - 1.125rem); margin-right: 1.125rem; margin-bottom: 1.125rem; }
  .c-grid--2l.sp-keep > .c-grid__item5col { width: calc( 20% - 1.125rem); margin-right: 1.125rem; margin-bottom: 1.125rem; }
  .c-grid--2l.sp-keep > .sp-item1 { width: calc( 8.33333% - 1.125rem); margin-right: 1.125rem; margin-bottom: 1.125rem; }
  .c-grid--2l.sp-keep > .sp-item2 { width: calc( 16.66667% - 1.125rem); margin-right: 1.125rem; margin-bottom: 1.125rem; }
  .c-grid--2l.sp-keep > .sp-item3 { width: calc( 25% - 1.125rem); margin-right: 1.125rem; margin-bottom: 1.125rem; }
  .c-grid--2l.sp-keep > .sp-item4 { width: calc( 33.33333% - 1.125rem); margin-right: 1.125rem; margin-bottom: 1.125rem; }
  .c-grid--2l.sp-keep > .sp-item5 { width: calc( 41.66667% - 1.125rem); margin-right: 1.125rem; margin-bottom: 1.125rem; }
  .c-grid--2l.sp-keep > .sp-item6 { width: calc( 50% - 1.125rem); margin-right: 1.125rem; margin-bottom: 1.125rem; }
  .c-grid--2l.sp-keep > .sp-item7 { width: calc( 58.33333% - 1.125rem); margin-right: 1.125rem; margin-bottom: 1.125rem; }
  .c-grid--2l.sp-keep > .sp-item8 { width: calc( 66.66667% - 1.125rem); margin-right: 1.125rem; margin-bottom: 1.125rem; }
  .c-grid--2l.sp-keep > .sp-item9 { width: calc( 75% - 1.125rem); margin-right: 1.125rem; margin-bottom: 1.125rem; }
  .c-grid--2l.sp-keep > .sp-item10 { width: calc( 83.33333% - 1.125rem); margin-right: 1.125rem; margin-bottom: 1.125rem; }
  .c-grid--2l.sp-keep > .sp-item11 { width: calc( 91.66667% - 1.125rem); margin-right: 1.125rem; margin-bottom: 1.125rem; }
  .c-grid--2l.sp-keep > .sp-item12 { width: calc( 100% - 1.125rem); margin-right: 1.125rem; margin-bottom: 1.125rem; }
  .c-grid--2l.sp-keep > .sp-item5col { width: calc( 20% - 1.125rem); margin-right: 1.125rem; margin-bottom: 1.125rem; } }

.c-grid--2x { margin-right: -2rem; margin-bottom: -2rem; }

.c-grid--2x > .c-grid__item1 { width: calc( 8.33333% - 2rem); margin-right: 2rem; margin-bottom: 2rem; }

.c-grid--2x > .c-grid__item2 { width: calc( 16.66667% - 2rem); margin-right: 2rem; margin-bottom: 2rem; }

.c-grid--2x > .c-grid__item3 { width: calc( 25% - 2rem); margin-right: 2rem; margin-bottom: 2rem; }

.c-grid--2x > .c-grid__item4 { width: calc( 33.33333% - 2rem); margin-right: 2rem; margin-bottom: 2rem; }

.c-grid--2x > .c-grid__item5 { width: calc( 41.66667% - 2rem); margin-right: 2rem; margin-bottom: 2rem; }

.c-grid--2x > .c-grid__item6 { width: calc( 50% - 2rem); margin-right: 2rem; margin-bottom: 2rem; }

.c-grid--2x > .c-grid__item7 { width: calc( 58.33333% - 2rem); margin-right: 2rem; margin-bottom: 2rem; }

.c-grid--2x > .c-grid__item8 { width: calc( 66.66667% - 2rem); margin-right: 2rem; margin-bottom: 2rem; }

.c-grid--2x > .c-grid__item9 { width: calc( 75% - 2rem); margin-right: 2rem; margin-bottom: 2rem; }

.c-grid--2x > .c-grid__item10 { width: calc( 83.33333% - 2rem); margin-right: 2rem; margin-bottom: 2rem; }

.c-grid--2x > .c-grid__item11 { width: calc( 91.66667% - 2rem); margin-right: 2rem; margin-bottom: 2rem; }

.c-grid--2x > .c-grid__item12 { width: calc( 100% - 2rem); margin-right: 2rem; margin-bottom: 2rem; }

.c-grid--2x > .c-grid__item5col { width: calc( 20% - 2rem); margin-right: 2rem; margin-bottom: 2rem; }

@media screen and (max-width: 768px) { .c-grid--2x:not(.sp-keep) { margin-bottom: -1.5rem; }
  .c-grid--2x:not(.sp-keep) > .c-grid__item1 { margin-bottom: 1.5rem; }
  .c-grid--2x:not(.sp-keep) > .c-grid__item2 { margin-bottom: 1.5rem; }
  .c-grid--2x:not(.sp-keep) > .c-grid__item3 { margin-bottom: 1.5rem; }
  .c-grid--2x:not(.sp-keep) > .c-grid__item4 { margin-bottom: 1.5rem; }
  .c-grid--2x:not(.sp-keep) > .c-grid__item5 { margin-bottom: 1.5rem; }
  .c-grid--2x:not(.sp-keep) > .c-grid__item6 { margin-bottom: 1.5rem; }
  .c-grid--2x:not(.sp-keep) > .c-grid__item7 { margin-bottom: 1.5rem; }
  .c-grid--2x:not(.sp-keep) > .c-grid__item8 { margin-bottom: 1.5rem; }
  .c-grid--2x:not(.sp-keep) > .c-grid__item9 { margin-bottom: 1.5rem; }
  .c-grid--2x:not(.sp-keep) > .c-grid__item10 { margin-bottom: 1.5rem; }
  .c-grid--2x:not(.sp-keep) > .c-grid__item11 { margin-bottom: 1.5rem; }
  .c-grid--2x:not(.sp-keep) > .c-grid__item12 { margin-bottom: 1.5rem; }
  .c-grid--2x:not(.sp-keep) > .c-grid__item5col { margin-bottom: 1.5rem; }
  .c-grid--2x.sp-keep { margin-right: -1.5rem; margin-bottom: -1.5rem; }
  .c-grid--2x.sp-keep > .c-grid__item1 { width: calc( 8.33333% - 1.5rem); margin-right: 1.5rem; margin-bottom: 1.5rem; }
  .c-grid--2x.sp-keep > .c-grid__item2 { width: calc( 16.66667% - 1.5rem); margin-right: 1.5rem; margin-bottom: 1.5rem; }
  .c-grid--2x.sp-keep > .c-grid__item3 { width: calc( 25% - 1.5rem); margin-right: 1.5rem; margin-bottom: 1.5rem; }
  .c-grid--2x.sp-keep > .c-grid__item4 { width: calc( 33.33333% - 1.5rem); margin-right: 1.5rem; margin-bottom: 1.5rem; }
  .c-grid--2x.sp-keep > .c-grid__item5 { width: calc( 41.66667% - 1.5rem); margin-right: 1.5rem; margin-bottom: 1.5rem; }
  .c-grid--2x.sp-keep > .c-grid__item6 { width: calc( 50% - 1.5rem); margin-right: 1.5rem; margin-bottom: 1.5rem; }
  .c-grid--2x.sp-keep > .c-grid__item7 { width: calc( 58.33333% - 1.5rem); margin-right: 1.5rem; margin-bottom: 1.5rem; }
  .c-grid--2x.sp-keep > .c-grid__item8 { width: calc( 66.66667% - 1.5rem); margin-right: 1.5rem; margin-bottom: 1.5rem; }
  .c-grid--2x.sp-keep > .c-grid__item9 { width: calc( 75% - 1.5rem); margin-right: 1.5rem; margin-bottom: 1.5rem; }
  .c-grid--2x.sp-keep > .c-grid__item10 { width: calc( 83.33333% - 1.5rem); margin-right: 1.5rem; margin-bottom: 1.5rem; }
  .c-grid--2x.sp-keep > .c-grid__item11 { width: calc( 91.66667% - 1.5rem); margin-right: 1.5rem; margin-bottom: 1.5rem; }
  .c-grid--2x.sp-keep > .c-grid__item12 { width: calc( 100% - 1.5rem); margin-right: 1.5rem; margin-bottom: 1.5rem; }
  .c-grid--2x.sp-keep > .c-grid__item5col { width: calc( 20% - 1.5rem); margin-right: 1.5rem; margin-bottom: 1.5rem; }
  .c-grid--2x.sp-keep > .sp-item1 { width: calc( 8.33333% - 1.5rem); margin-right: 1.5rem; margin-bottom: 1.5rem; }
  .c-grid--2x.sp-keep > .sp-item2 { width: calc( 16.66667% - 1.5rem); margin-right: 1.5rem; margin-bottom: 1.5rem; }
  .c-grid--2x.sp-keep > .sp-item3 { width: calc( 25% - 1.5rem); margin-right: 1.5rem; margin-bottom: 1.5rem; }
  .c-grid--2x.sp-keep > .sp-item4 { width: calc( 33.33333% - 1.5rem); margin-right: 1.5rem; margin-bottom: 1.5rem; }
  .c-grid--2x.sp-keep > .sp-item5 { width: calc( 41.66667% - 1.5rem); margin-right: 1.5rem; margin-bottom: 1.5rem; }
  .c-grid--2x.sp-keep > .sp-item6 { width: calc( 50% - 1.5rem); margin-right: 1.5rem; margin-bottom: 1.5rem; }
  .c-grid--2x.sp-keep > .sp-item7 { width: calc( 58.33333% - 1.5rem); margin-right: 1.5rem; margin-bottom: 1.5rem; }
  .c-grid--2x.sp-keep > .sp-item8 { width: calc( 66.66667% - 1.5rem); margin-right: 1.5rem; margin-bottom: 1.5rem; }
  .c-grid--2x.sp-keep > .sp-item9 { width: calc( 75% - 1.5rem); margin-right: 1.5rem; margin-bottom: 1.5rem; }
  .c-grid--2x.sp-keep > .sp-item10 { width: calc( 83.33333% - 1.5rem); margin-right: 1.5rem; margin-bottom: 1.5rem; }
  .c-grid--2x.sp-keep > .sp-item11 { width: calc( 91.66667% - 1.5rem); margin-right: 1.5rem; margin-bottom: 1.5rem; }
  .c-grid--2x.sp-keep > .sp-item12 { width: calc( 100% - 1.5rem); margin-right: 1.5rem; margin-bottom: 1.5rem; }
  .c-grid--2x.sp-keep > .sp-item5col { width: calc( 20% - 1.5rem); margin-right: 1.5rem; margin-bottom: 1.5rem; } }

@media screen and (max-width: 768px) { .c-grid.sp-2l:not(.sp-keep) { margin-bottom: -1.125rem; }
  .c-grid.sp-2l:not(.sp-keep) > .c-grid__item1 { margin-bottom: 1.125rem; }
  .c-grid.sp-2l:not(.sp-keep) > .c-grid__item2 { margin-bottom: 1.125rem; }
  .c-grid.sp-2l:not(.sp-keep) > .c-grid__item3 { margin-bottom: 1.125rem; }
  .c-grid.sp-2l:not(.sp-keep) > .c-grid__item4 { margin-bottom: 1.125rem; }
  .c-grid.sp-2l:not(.sp-keep) > .c-grid__item5 { margin-bottom: 1.125rem; }
  .c-grid.sp-2l:not(.sp-keep) > .c-grid__item6 { margin-bottom: 1.125rem; }
  .c-grid.sp-2l:not(.sp-keep) > .c-grid__item7 { margin-bottom: 1.125rem; }
  .c-grid.sp-2l:not(.sp-keep) > .c-grid__item8 { margin-bottom: 1.125rem; }
  .c-grid.sp-2l:not(.sp-keep) > .c-grid__item9 { margin-bottom: 1.125rem; }
  .c-grid.sp-2l:not(.sp-keep) > .c-grid__item10 { margin-bottom: 1.125rem; }
  .c-grid.sp-2l:not(.sp-keep) > .c-grid__item11 { margin-bottom: 1.125rem; }
  .c-grid.sp-2l:not(.sp-keep) > .c-grid__item12 { margin-bottom: 1.125rem; }
  .c-grid.sp-2l:not(.sp-keep) > .c-grid__item5col { margin-bottom: 1.125rem; }
  .c-grid.sp-2l.sp-keep { margin-right: -1.125rem; margin-bottom: -1.125rem; }
  .c-grid.sp-2l.sp-keep > .c-grid__item1 { width: calc( 8.33333% - 1.125rem); margin-right: 1.125rem; margin-bottom: 1.125rem; }
  .c-grid.sp-2l.sp-keep > .c-grid__item2 { width: calc( 16.66667% - 1.125rem); margin-right: 1.125rem; margin-bottom: 1.125rem; }
  .c-grid.sp-2l.sp-keep > .c-grid__item3 { width: calc( 25% - 1.125rem); margin-right: 1.125rem; margin-bottom: 1.125rem; }
  .c-grid.sp-2l.sp-keep > .c-grid__item4 { width: calc( 33.33333% - 1.125rem); margin-right: 1.125rem; margin-bottom: 1.125rem; }
  .c-grid.sp-2l.sp-keep > .c-grid__item5 { width: calc( 41.66667% - 1.125rem); margin-right: 1.125rem; margin-bottom: 1.125rem; }
  .c-grid.sp-2l.sp-keep > .c-grid__item6 { width: calc( 50% - 1.125rem); margin-right: 1.125rem; margin-bottom: 1.125rem; }
  .c-grid.sp-2l.sp-keep > .c-grid__item7 { width: calc( 58.33333% - 1.125rem); margin-right: 1.125rem; margin-bottom: 1.125rem; }
  .c-grid.sp-2l.sp-keep > .c-grid__item8 { width: calc( 66.66667% - 1.125rem); margin-right: 1.125rem; margin-bottom: 1.125rem; }
  .c-grid.sp-2l.sp-keep > .c-grid__item9 { width: calc( 75% - 1.125rem); margin-right: 1.125rem; margin-bottom: 1.125rem; }
  .c-grid.sp-2l.sp-keep > .c-grid__item10 { width: calc( 83.33333% - 1.125rem); margin-right: 1.125rem; margin-bottom: 1.125rem; }
  .c-grid.sp-2l.sp-keep > .c-grid__item11 { width: calc( 91.66667% - 1.125rem); margin-right: 1.125rem; margin-bottom: 1.125rem; }
  .c-grid.sp-2l.sp-keep > .c-grid__item12 { width: calc( 100% - 1.125rem); margin-right: 1.125rem; margin-bottom: 1.125rem; }
  .c-grid.sp-2l.sp-keep > .c-grid__item5col { width: calc( 20% - 1.125rem); margin-right: 1.125rem; margin-bottom: 1.125rem; }
  .c-grid.sp-2l.sp-keep > .sp-item1 { width: calc( 8.33333% - 1.125rem); margin-right: 1.125rem; margin-bottom: 1.125rem; }
  .c-grid.sp-2l.sp-keep > .sp-item2 { width: calc( 16.66667% - 1.125rem); margin-right: 1.125rem; margin-bottom: 1.125rem; }
  .c-grid.sp-2l.sp-keep > .sp-item3 { width: calc( 25% - 1.125rem); margin-right: 1.125rem; margin-bottom: 1.125rem; }
  .c-grid.sp-2l.sp-keep > .sp-item4 { width: calc( 33.33333% - 1.125rem); margin-right: 1.125rem; margin-bottom: 1.125rem; }
  .c-grid.sp-2l.sp-keep > .sp-item5 { width: calc( 41.66667% - 1.125rem); margin-right: 1.125rem; margin-bottom: 1.125rem; }
  .c-grid.sp-2l.sp-keep > .sp-item6 { width: calc( 50% - 1.125rem); margin-right: 1.125rem; margin-bottom: 1.125rem; }
  .c-grid.sp-2l.sp-keep > .sp-item7 { width: calc( 58.33333% - 1.125rem); margin-right: 1.125rem; margin-bottom: 1.125rem; }
  .c-grid.sp-2l.sp-keep > .sp-item8 { width: calc( 66.66667% - 1.125rem); margin-right: 1.125rem; margin-bottom: 1.125rem; }
  .c-grid.sp-2l.sp-keep > .sp-item9 { width: calc( 75% - 1.125rem); margin-right: 1.125rem; margin-bottom: 1.125rem; }
  .c-grid.sp-2l.sp-keep > .sp-item10 { width: calc( 83.33333% - 1.125rem); margin-right: 1.125rem; margin-bottom: 1.125rem; }
  .c-grid.sp-2l.sp-keep > .sp-item11 { width: calc( 91.66667% - 1.125rem); margin-right: 1.125rem; margin-bottom: 1.125rem; }
  .c-grid.sp-2l.sp-keep > .sp-item12 { width: calc( 100% - 1.125rem); margin-right: 1.125rem; margin-bottom: 1.125rem; }
  .c-grid.sp-2l.sp-keep > .sp-item5col { width: calc( 20% - 1.125rem); margin-right: 1.125rem; margin-bottom: 1.125rem; } }

@media screen and (max-width: 768px) { .c-grid.sp-2x:not(.sp-keep) { margin-bottom: -1.5rem; }
  .c-grid.sp-2x:not(.sp-keep) > .c-grid__item1 { margin-bottom: 1.5rem; }
  .c-grid.sp-2x:not(.sp-keep) > .c-grid__item2 { margin-bottom: 1.5rem; }
  .c-grid.sp-2x:not(.sp-keep) > .c-grid__item3 { margin-bottom: 1.5rem; }
  .c-grid.sp-2x:not(.sp-keep) > .c-grid__item4 { margin-bottom: 1.5rem; }
  .c-grid.sp-2x:not(.sp-keep) > .c-grid__item5 { margin-bottom: 1.5rem; }
  .c-grid.sp-2x:not(.sp-keep) > .c-grid__item6 { margin-bottom: 1.5rem; }
  .c-grid.sp-2x:not(.sp-keep) > .c-grid__item7 { margin-bottom: 1.5rem; }
  .c-grid.sp-2x:not(.sp-keep) > .c-grid__item8 { margin-bottom: 1.5rem; }
  .c-grid.sp-2x:not(.sp-keep) > .c-grid__item9 { margin-bottom: 1.5rem; }
  .c-grid.sp-2x:not(.sp-keep) > .c-grid__item10 { margin-bottom: 1.5rem; }
  .c-grid.sp-2x:not(.sp-keep) > .c-grid__item11 { margin-bottom: 1.5rem; }
  .c-grid.sp-2x:not(.sp-keep) > .c-grid__item12 { margin-bottom: 1.5rem; }
  .c-grid.sp-2x:not(.sp-keep) > .c-grid__item5col { margin-bottom: 1.5rem; }
  .c-grid.sp-2x.sp-keep { margin-right: -1.5rem; margin-bottom: -1.5rem; }
  .c-grid.sp-2x.sp-keep > .c-grid__item1 { width: calc( 8.33333% - 1.5rem); margin-right: 1.5rem; margin-bottom: 1.5rem; }
  .c-grid.sp-2x.sp-keep > .c-grid__item2 { width: calc( 16.66667% - 1.5rem); margin-right: 1.5rem; margin-bottom: 1.5rem; }
  .c-grid.sp-2x.sp-keep > .c-grid__item3 { width: calc( 25% - 1.5rem); margin-right: 1.5rem; margin-bottom: 1.5rem; }
  .c-grid.sp-2x.sp-keep > .c-grid__item4 { width: calc( 33.33333% - 1.5rem); margin-right: 1.5rem; margin-bottom: 1.5rem; }
  .c-grid.sp-2x.sp-keep > .c-grid__item5 { width: calc( 41.66667% - 1.5rem); margin-right: 1.5rem; margin-bottom: 1.5rem; }
  .c-grid.sp-2x.sp-keep > .c-grid__item6 { width: calc( 50% - 1.5rem); margin-right: 1.5rem; margin-bottom: 1.5rem; }
  .c-grid.sp-2x.sp-keep > .c-grid__item7 { width: calc( 58.33333% - 1.5rem); margin-right: 1.5rem; margin-bottom: 1.5rem; }
  .c-grid.sp-2x.sp-keep > .c-grid__item8 { width: calc( 66.66667% - 1.5rem); margin-right: 1.5rem; margin-bottom: 1.5rem; }
  .c-grid.sp-2x.sp-keep > .c-grid__item9 { width: calc( 75% - 1.5rem); margin-right: 1.5rem; margin-bottom: 1.5rem; }
  .c-grid.sp-2x.sp-keep > .c-grid__item10 { width: calc( 83.33333% - 1.5rem); margin-right: 1.5rem; margin-bottom: 1.5rem; }
  .c-grid.sp-2x.sp-keep > .c-grid__item11 { width: calc( 91.66667% - 1.5rem); margin-right: 1.5rem; margin-bottom: 1.5rem; }
  .c-grid.sp-2x.sp-keep > .c-grid__item12 { width: calc( 100% - 1.5rem); margin-right: 1.5rem; margin-bottom: 1.5rem; }
  .c-grid.sp-2x.sp-keep > .c-grid__item5col { width: calc( 20% - 1.5rem); margin-right: 1.5rem; margin-bottom: 1.5rem; }
  .c-grid.sp-2x.sp-keep > .sp-item1 { width: calc( 8.33333% - 1.5rem); margin-right: 1.5rem; margin-bottom: 1.5rem; }
  .c-grid.sp-2x.sp-keep > .sp-item2 { width: calc( 16.66667% - 1.5rem); margin-right: 1.5rem; margin-bottom: 1.5rem; }
  .c-grid.sp-2x.sp-keep > .sp-item3 { width: calc( 25% - 1.5rem); margin-right: 1.5rem; margin-bottom: 1.5rem; }
  .c-grid.sp-2x.sp-keep > .sp-item4 { width: calc( 33.33333% - 1.5rem); margin-right: 1.5rem; margin-bottom: 1.5rem; }
  .c-grid.sp-2x.sp-keep > .sp-item5 { width: calc( 41.66667% - 1.5rem); margin-right: 1.5rem; margin-bottom: 1.5rem; }
  .c-grid.sp-2x.sp-keep > .sp-item6 { width: calc( 50% - 1.5rem); margin-right: 1.5rem; margin-bottom: 1.5rem; }
  .c-grid.sp-2x.sp-keep > .sp-item7 { width: calc( 58.33333% - 1.5rem); margin-right: 1.5rem; margin-bottom: 1.5rem; }
  .c-grid.sp-2x.sp-keep > .sp-item8 { width: calc( 66.66667% - 1.5rem); margin-right: 1.5rem; margin-bottom: 1.5rem; }
  .c-grid.sp-2x.sp-keep > .sp-item9 { width: calc( 75% - 1.5rem); margin-right: 1.5rem; margin-bottom: 1.5rem; }
  .c-grid.sp-2x.sp-keep > .sp-item10 { width: calc( 83.33333% - 1.5rem); margin-right: 1.5rem; margin-bottom: 1.5rem; }
  .c-grid.sp-2x.sp-keep > .sp-item11 { width: calc( 91.66667% - 1.5rem); margin-right: 1.5rem; margin-bottom: 1.5rem; }
  .c-grid.sp-2x.sp-keep > .sp-item12 { width: calc( 100% - 1.5rem); margin-right: 1.5rem; margin-bottom: 1.5rem; }
  .c-grid.sp-2x.sp-keep > .sp-item5col { width: calc( 20% - 1.5rem); margin-right: 1.5rem; margin-bottom: 1.5rem; } }

.c-grid--1px { margin-right: -1px; margin-bottom: -1px; }

.c-grid--1px > .c-grid__item1 { width: calc( 8.33333% - 1px); margin-right: 1px; margin-bottom: 1px; }

.c-grid--1px > .c-grid__item2 { width: calc( 16.66667% - 1px); margin-right: 1px; margin-bottom: 1px; }

.c-grid--1px > .c-grid__item3 { width: calc( 25% - 1px); margin-right: 1px; margin-bottom: 1px; }

.c-grid--1px > .c-grid__item4 { width: calc( 33.33333% - 1px); margin-right: 1px; margin-bottom: 1px; }

.c-grid--1px > .c-grid__item5 { width: calc( 41.66667% - 1px); margin-right: 1px; margin-bottom: 1px; }

.c-grid--1px > .c-grid__item6 { width: calc( 50% - 1px); margin-right: 1px; margin-bottom: 1px; }

.c-grid--1px > .c-grid__item7 { width: calc( 58.33333% - 1px); margin-right: 1px; margin-bottom: 1px; }

.c-grid--1px > .c-grid__item8 { width: calc( 66.66667% - 1px); margin-right: 1px; margin-bottom: 1px; }

.c-grid--1px > .c-grid__item9 { width: calc( 75% - 1px); margin-right: 1px; margin-bottom: 1px; }

.c-grid--1px > .c-grid__item10 { width: calc( 83.33333% - 1px); margin-right: 1px; margin-bottom: 1px; }

.c-grid--1px > .c-grid__item11 { width: calc( 91.66667% - 1px); margin-right: 1px; margin-bottom: 1px; }

.c-grid--1px > .c-grid__item12 { width: calc( 100% - 1px); margin-right: 1px; margin-bottom: 1px; }

.c-grid--1px > .c-grid__item5col { width: calc( 20% - 1px); margin-right: 1px; margin-bottom: 1px; }

@media screen and (max-width: 768px) { .c-grid--1px:not(.sp-keep) { margin-bottom: -1px; }
  .c-grid--1px:not(.sp-keep) > .c-grid__item1 { margin-bottom: 1px; }
  .c-grid--1px:not(.sp-keep) > .c-grid__item2 { margin-bottom: 1px; }
  .c-grid--1px:not(.sp-keep) > .c-grid__item3 { margin-bottom: 1px; }
  .c-grid--1px:not(.sp-keep) > .c-grid__item4 { margin-bottom: 1px; }
  .c-grid--1px:not(.sp-keep) > .c-grid__item5 { margin-bottom: 1px; }
  .c-grid--1px:not(.sp-keep) > .c-grid__item6 { margin-bottom: 1px; }
  .c-grid--1px:not(.sp-keep) > .c-grid__item7 { margin-bottom: 1px; }
  .c-grid--1px:not(.sp-keep) > .c-grid__item8 { margin-bottom: 1px; }
  .c-grid--1px:not(.sp-keep) > .c-grid__item9 { margin-bottom: 1px; }
  .c-grid--1px:not(.sp-keep) > .c-grid__item10 { margin-bottom: 1px; }
  .c-grid--1px:not(.sp-keep) > .c-grid__item11 { margin-bottom: 1px; }
  .c-grid--1px:not(.sp-keep) > .c-grid__item12 { margin-bottom: 1px; }
  .c-grid--1px:not(.sp-keep) > .c-grid__item5col { margin-bottom: 1px; }
  .c-grid--1px.sp-keep { margin-right: -1px; margin-bottom: -1px; }
  .c-grid--1px.sp-keep > .c-grid__item1 { width: calc( 8.33333% - 1px); margin-right: 1px; margin-bottom: 1px; }
  .c-grid--1px.sp-keep > .c-grid__item2 { width: calc( 16.66667% - 1px); margin-right: 1px; margin-bottom: 1px; }
  .c-grid--1px.sp-keep > .c-grid__item3 { width: calc( 25% - 1px); margin-right: 1px; margin-bottom: 1px; }
  .c-grid--1px.sp-keep > .c-grid__item4 { width: calc( 33.33333% - 1px); margin-right: 1px; margin-bottom: 1px; }
  .c-grid--1px.sp-keep > .c-grid__item5 { width: calc( 41.66667% - 1px); margin-right: 1px; margin-bottom: 1px; }
  .c-grid--1px.sp-keep > .c-grid__item6 { width: calc( 50% - 1px); margin-right: 1px; margin-bottom: 1px; }
  .c-grid--1px.sp-keep > .c-grid__item7 { width: calc( 58.33333% - 1px); margin-right: 1px; margin-bottom: 1px; }
  .c-grid--1px.sp-keep > .c-grid__item8 { width: calc( 66.66667% - 1px); margin-right: 1px; margin-bottom: 1px; }
  .c-grid--1px.sp-keep > .c-grid__item9 { width: calc( 75% - 1px); margin-right: 1px; margin-bottom: 1px; }
  .c-grid--1px.sp-keep > .c-grid__item10 { width: calc( 83.33333% - 1px); margin-right: 1px; margin-bottom: 1px; }
  .c-grid--1px.sp-keep > .c-grid__item11 { width: calc( 91.66667% - 1px); margin-right: 1px; margin-bottom: 1px; }
  .c-grid--1px.sp-keep > .c-grid__item12 { width: calc( 100% - 1px); margin-right: 1px; margin-bottom: 1px; }
  .c-grid--1px.sp-keep > .c-grid__item5col { width: calc( 20% - 1px); margin-right: 1px; margin-bottom: 1px; }
  .c-grid--1px.sp-keep > .sp-item1 { width: calc( 8.33333% - 1px); margin-right: 1px; margin-bottom: 1px; }
  .c-grid--1px.sp-keep > .sp-item2 { width: calc( 16.66667% - 1px); margin-right: 1px; margin-bottom: 1px; }
  .c-grid--1px.sp-keep > .sp-item3 { width: calc( 25% - 1px); margin-right: 1px; margin-bottom: 1px; }
  .c-grid--1px.sp-keep > .sp-item4 { width: calc( 33.33333% - 1px); margin-right: 1px; margin-bottom: 1px; }
  .c-grid--1px.sp-keep > .sp-item5 { width: calc( 41.66667% - 1px); margin-right: 1px; margin-bottom: 1px; }
  .c-grid--1px.sp-keep > .sp-item6 { width: calc( 50% - 1px); margin-right: 1px; margin-bottom: 1px; }
  .c-grid--1px.sp-keep > .sp-item7 { width: calc( 58.33333% - 1px); margin-right: 1px; margin-bottom: 1px; }
  .c-grid--1px.sp-keep > .sp-item8 { width: calc( 66.66667% - 1px); margin-right: 1px; margin-bottom: 1px; }
  .c-grid--1px.sp-keep > .sp-item9 { width: calc( 75% - 1px); margin-right: 1px; margin-bottom: 1px; }
  .c-grid--1px.sp-keep > .sp-item10 { width: calc( 83.33333% - 1px); margin-right: 1px; margin-bottom: 1px; }
  .c-grid--1px.sp-keep > .sp-item11 { width: calc( 91.66667% - 1px); margin-right: 1px; margin-bottom: 1px; }
  .c-grid--1px.sp-keep > .sp-item12 { width: calc( 100% - 1px); margin-right: 1px; margin-bottom: 1px; }
  .c-grid--1px.sp-keep > .sp-item5col { width: calc( 20% - 1px); margin-right: 1px; margin-bottom: 1px; } }

/******************************************************************
component - flex
******************************************************************/
.c-flex { display: flex; margin-right: -1rem; }

.c-flex--inline { display: inline-flex; }

.c-flex--center { justify-content: center; }

.c-flex--right { justify-content: flex-end; }

.c-flex--between { justify-content: space-between; }

.c-flex--wrap { flex-wrap: wrap; margin-bottom: -1rem; }

.c-flex > .c-flex__item { box-sizing: border-box; margin-right: 1rem; }

.c-flex--wrap > .c-flex__item { margin-bottom: 1rem; }

.c-flex--vertical { align-items: center; }

@media screen and (max-width: 768px) { .c-flex:not(.sp-keep) { flex-direction: column; margin-right: 0; margin-bottom: -0.75rem; }
  .c-flex:not(.sp-keep) > .c-flex__item { width: 100%; margin-right: 0; margin-bottom: 0.75rem; }
  .c-flex.sp-keep { margin-right: -0.75rem; }
  .c-flex.sp-keep > .c-flex__item { margin-right: 0.75rem; }
  .c-flex--wrap.sp-keep { margin-bottom: -0.75rem; }
  .c-flex--wrap.sp-keep > .c-flex__item { margin-bottom: 0.75rem; } }

.c-flex--2s { margin-right: -0.5rem; }

.c-flex--2s.c-flex--wrap { margin-bottom: -0.5rem; }

.c-flex--2s > .c-flex__item { margin-right: 0.5rem; }

.c-flex--2s.c-flex--wrap > .c-flex__item { margin-bottom: 0.5rem; }

@media screen and (max-width: 768px) { .c-flex--2s:not(.sp-keep) { margin-bottom: -0.375rem; }
  .c-flex--2s:not(.sp-keep) > .c-flex__item { margin-bottom: 0.375rem; }
  .c-flex--2s.sp-keep { margin-right: -0.375rem; }
  .c-flex--2s.sp-keep > .c-flex__item { margin-right: 0.375rem; }
  .c-flex--2s.c-flex--wrap.sp-keep { margin-bottom: -0.375rem; }
  .c-flex--2s.c-flex--wrap.sp-keep > .c-flex__item { margin-bottom: 0.375rem; } }

@media screen and (max-width: 768px) { .c-flex.sp-2s:not(.sp-keep) { margin-bottom: -0.375rem; }
  .c-flex.sp-2s:not(.sp-keep) > .c-flex__item { margin-bottom: 0.375rem; }
  .c-flex.sp-2s.sp-keep { margin-right: -0.375rem; }
  .c-flex.sp-2s.sp-keep > .c-flex__item { margin-right: 0.375rem; } }

/******************************************************************
component - pagination
******************************************************************/
.p-pagination { display: flex; justify-content: center; align-items: center; line-height: 1; }

.p-pagination .disabled { visibility: hidden; }

.p-pagination > *:not(:last-child) { margin-right: 0.5rem; }

@media screen and (max-width: 768px) { .p-pagination > *:not(:last-child) { margin-right: 0.375rem; } }

.p-pagination a { color: inherit; text-decoration: none; }

.p-pagination a:hover { color: inherit; text-decoration: none; }

.p-pagination a:hover { color: #0164ac; }

.p-pagination__list { display: flex; flex-wrap: wrap; justify-content: center; margin-bottom: -0.5rem; padding-left: 0.5rem; padding-right: 0.5rem; }

@media screen and (max-width: 768px) { .p-pagination__list { margin-bottom: -0.375rem; } }

@media screen and (max-width: 768px) { .p-pagination__list { padding-left: 0; padding-right: 0; } }

.p-pagination__list > * { margin-bottom: 0.5rem; }

@media screen and (max-width: 768px) { .p-pagination__list > * { margin-bottom: 0.375rem; } }

.p-pagination__list > *:not(:last-child) { margin-right: 0.5rem; }

@media screen and (max-width: 768px) { .p-pagination__list > *:not(:last-child) { margin-right: 0.375rem; } }

.p-pagination__list a { display: flex; align-items: center; }

.p-pagination__list a span { width: 100%; text-align: center; }

.p-pagination__prev > span, .p-pagination__next > span { opacity: 0.4; }

.p-pagination__prevbutton, .p-pagination__nextbutton { position: relative; }

.p-pagination__prevbutton::after { content: '<'; }

.p-pagination__nextbutton::after { content: '>'; }

.p-pagination__first > span, .p-pagination__last > span { opacity: 0.4; }

.p-pagination__firstbutton, .p-pagination__lastbutton { position: relative; }

.p-pagination__firstbutton::after { content: '<<'; }

.p-pagination__lastbutton::after { content: '>>'; }

.p-pagination__list a { width: 2em; height: 2em; background: #EEEEEE; font-size: 90%; border-radius: 6px; }

.p-pagination__list .is-current a { background: #0164ac; color: #fff !important; }

/******************************************************************
component - section
******************************************************************/
.c-section { position: relative; padding-right: 2rem; padding-left: 2rem; padding-top: 0.1px; padding-bottom: 0.1px; }

@media screen and (max-width: 768px) { .c-section { padding-right: 0.75rem; padding-left: 0.75rem; } }

@media print, screen and (min-width: 769px) { .c-section--contentsrow { padding-right: 0; padding-left: 0; } }

.c-section--bordertop { border-top: 1px solid #d8d8d8; }

.c-section--borderbottom { border-bottom: 1px solid #d8d8d8; }

.c-section--bordersand { border-top: 1px solid #d8d8d8; border-bottom: 1px solid #d8d8d8; }

.c-section__fit { max-width: 1200px; margin-right: auto; margin-left: auto; }

.c-section__top { max-width: 1200px; margin-right: auto; margin-left: auto; margin-top: 4rem; }

@media screen and (max-width: 768px) { .c-section__top { margin-top: 2rem; } }

.c-section__bottom { max-width: 1200px; margin-right: auto; margin-left: auto; margin-bottom: 4rem; }

@media screen and (max-width: 768px) { .c-section__bottom { margin-bottom: 2rem; } }

.c-section__vertical { max-width: 1200px; margin: 4rem auto 4rem auto; }

@media screen and (max-width: 768px) { .c-section__vertical { margin: 2rem auto 2rem auto; } }

.c-section__small { max-width: 1000px; }

.c-section--bg-lightblue { background-color: #e8f6f8; }

.c-section--bg-lightyellow { background-color: #f6fbe4; }

.c-section__top--3s { margin-top: 1rem; }

.c-section__bottom--3s { margin-bottom: 1rem; }

.c-section__vertical--3s { margin: 1rem auto 1rem auto; }

@media screen and (max-width: 768px) { .c-section__top--3s { margin-top: 0.5rem; }
  .c-section__bottom--3s { margin-bottom: 0.5rem; }
  .c-section__vertical--3s { margin: 0.5rem auto 0.5rem auto; } }

.c-section__top--2s { margin-top: 2rem; }

.c-section__bottom--2s { margin-bottom: 2rem; }

.c-section__vertical--2s { margin: 2rem auto 2rem auto; }

@media screen and (max-width: 768px) { .c-section__top--2s { margin-top: 1rem; }
  .c-section__bottom--2s { margin-bottom: 1rem; }
  .c-section__vertical--2s { margin: 1rem auto 1rem auto; } }

.c-section__top--l { margin-top: 5rem; }

.c-section__bottom--l { margin-bottom: 5rem; }

.c-section__vertical--l { margin: 5rem auto 5rem auto; }

@media screen and (max-width: 768px) { .c-section__top--l { margin-top: 2.5rem; }
  .c-section__bottom--l { margin-bottom: 2.5rem; }
  .c-section__vertical--l { margin: 2.5rem auto 2.5rem auto; } }

@media screen and (max-width: 768px) { .c-section__top.sp-3s { margin-top: 0.5rem; }
  .c-section__bottom.sp-3s { margin-bottom: 0.5rem; }
  .c-section__vertical.sp-3s { margin: 0.5rem auto 0.5rem auto; }
  .c-section__top.sp-2s { margin-top: 1rem; }
  .c-section__bottom.sp-2s { margin-bottom: 1rem; }
  .c-section__vertical.sp-2s { margin: 1rem auto 1rem auto; }
  .c-section__top.sp-l { margin-top: 2.5rem; }
  .c-section__bottom.sp-l { margin-bottom: 2.5rem; }
  .c-section__vertical.sp-l { margin: 2.5rem auto 2.5rem auto; } }

/******************************************************************
component - gutter
******************************************************************/
.c-gutter > *:not(:last-child) { margin-bottom: 1rem; }

.c-gutter-3s > *:not(:last-child) { margin-bottom: 0.25rem; }

.c-gutter-2s > *:not(:last-child) { margin-bottom: 0.5rem; }

.c-gutter-s > *:not(:last-child) { margin-bottom: 0.75rem; }

.c-gutter-2l > *:not(:last-child) { margin-bottom: 1.5rem; }

.c-gutter-2x > *:not(:last-child) { margin-bottom: 2rem; }

.c-gutter-3x > *:not(:last-child) { margin-bottom: 3rem; }

@media screen and (max-width: 768px) { .c-gutter > *:not(:last-child) { margin-bottom: 0.75rem; }
  .c-gutter-3s > *:not(:last-child) { margin-bottom: 0.1875rem; }
  .c-gutter-2s > *:not(:last-child) { margin-bottom: 0.375rem; }
  .c-gutter-s > *:not(:last-child) { margin-bottom: 0.5625rem; }
  .c-gutter-2l > *:not(:last-child) { margin-bottom: 1.125rem; }
  .c-gutter-2x > *:not(:last-child) { margin-bottom: 1.5rem; }
  .c-gutter-3x > *:not(:last-child) { margin-bottom: 2.25rem; }
  .c-sp-gutter > *:not(:last-child) { margin-bottom: 0.75rem; }
  .c-sp-gutter-3s > *:not(:last-child) { margin-bottom: 0.1875rem; }
  .c-sp-gutter-2s > *:not(:last-child) { margin-bottom: 0.375rem; }
  .c-sp-gutter-s > *:not(:last-child) { margin-bottom: 0.5625rem; }
  .c-sp-gutter-2l > *:not(:last-child) { margin-bottom: 1.125rem; }
  .c-sp-gutter-2x > *:not(:last-child) { margin-bottom: 1.5rem; }
  .c-sp-gutter-3x > *:not(:last-child) { margin-bottom: 2.25rem; } }

/******************************************************************
component - gutter-row
******************************************************************/
.c-gutter-row > *:not(:last-child) { margin-right: 1rem; }

@media screen and (max-width: 768px) { .c-gutter-row > *:not(:last-child) { margin-right: 0.75rem; }
  .c-sp-gutter-row > *:not(:last-child) { margin-right: 0.75rem; } }

/******************************************************************
component - ani-bg-slideinout
******************************************************************/
.c-ani-bg-slideinout { position: relative; }

.c-ani-bg-slideinout > * { transition-property: opacity; transition-duration: 0; transition-delay: 0.515s; opacity: 0; }

.c-ani-bg-slideinout::before { position: absolute; content: ""; margin: auto; box-sizing: border-box; vertical-align: middle; top: 0; right: 0; bottom: 0; left: 0; width: 100%; height: 100%; transform: scaleX(0); background-color: #fff; z-index: +1; animation-duration: 0.9s; animation-fill-mode: forwards; animation-delay: 0.2s; }

.c-ani-bg-slideinout.is-animation > * { opacity: 1; }

.c-ani-bg-slideinout.is-animation::before { animation-name: c-ani-bg-slideinout; }

@keyframes c-ani-bg-slideinout { 0% { transform: scaleX(0);
    transform-origin: center left; }
  35% { transform: scaleX(1);
    transform-origin: center left; }
  36%, 60% { transform: scaleX(1);
    transform-origin: center right; }
  100% { transform: scaleX(0);
    transform-origin: center right; } }

@keyframes c-ani-bg-slideinout--right { 0% { transform: scaleX(0);
    transform-origin: center right; }
  35% { transform: scaleX(1);
    transform-origin: center right; }
  36%, 60% { transform: scaleX(1);
    transform-origin: center left; }
  100% { transform: scaleX(0);
    transform-origin: center left; } }

/******************************************************************
project - breadcrumb
******************************************************************/
.p-breadcrumb::after { content: ""; display: block; clear: both; }

.p-breadcrumb__item { float: left; padding-right: 0.5em; font-size: 85%; }

.p-breadcrumb__item a { color: inherit; }

.p-breadcrumb__item:not(:last-child)::after { content: '>'; padding-left: 0.5em; }

/******************************************************************
project - modal (Modaal)
******************************************************************/
/*! Modaal - accessible modals - v0.4.4 by Humaan, for all humans. http://humaan.com */
.modaal-noscroll { overflow: hidden; }

.modaal-accessible-hide { position: absolute !important; clip: rect(1px 1px 1px 1px); /* IE6, IE7 */ clip: rect(1px, 1px, 1px, 1px); padding: 0 !important; border: 0 !important; height: 1px !important; width: 1px !important; overflow: hidden; }

.modaal-overlay { position: fixed; top: 0; left: 0; width: 100%; height: 100%; z-index: 999; opacity: 0; }

.modaal-wrapper { display: block; position: fixed; top: 0; left: 0; width: 100%; height: 100%; z-index: 9999; overflow: auto; opacity: 1; box-sizing: border-box; -webkit-overflow-scrolling: touch; transition: all 0.3s ease-in-out; }

.modaal-wrapper * { box-sizing: border-box; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; -webkit-backface-visibility: hidden; }

.modaal-wrapper .modaal-close { border: none; background: transparent; padding: 0; -webkit-appearance: none; }

.modaal-wrapper.modaal-start_none { display: none; opacity: 1; }

.modaal-wrapper.modaal-start_fade { opacity: 0; }

.modaal-wrapper *[tabindex="0"] { outline: none !important; }

.modaal-wrapper.modaal-fullscreen { overflow: hidden; }

.modaal-outer-wrapper { display: table; position: relative; width: 100%; height: 100%; }

.modaal-fullscreen .modaal-outer-wrapper { display: block; }

.modaal-inner-wrapper { display: table-cell; width: 100%; height: 100%; position: relative; vertical-align: middle; text-align: center; padding: 80px 25px; }

.modaal-fullscreen .modaal-inner-wrapper { padding: 0; display: block; vertical-align: top; }

.modaal-container { position: relative; display: inline-block; width: 100%; margin: auto; text-align: left; color: #000; max-width: 1000px; border-radius: 0px; background: #fff; box-shadow: 0 4px 15px rgba(0, 0, 0, 0.2); cursor: auto; }

.modaal-container.is_loading { height: 100px; width: 100px; overflow: hidden; }

.modaal-fullscreen .modaal-container { max-width: none; height: 100%; overflow: auto; }

.modaal-close { position: fixed; right: 20px; top: 20px; color: #fff; cursor: pointer; opacity: 1; width: 50px; height: 50px; background: rgba(0, 0, 0, 0); border-radius: 100%; transition: all 0.2s ease-in-out; }

.modaal-close:focus, .modaal-close:hover { outline: none; background: #fff; }

.modaal-close:focus:before, .modaal-close:focus:after, .modaal-close:hover:before, .modaal-close:hover:after { background: #b93d0c; }

.modaal-close span { position: absolute !important; clip: rect(1px 1px 1px 1px); /* IE6, IE7 */ clip: rect(1px, 1px, 1px, 1px); padding: 0 !important; border: 0 !important; height: 1px !important; width: 1px !important; overflow: hidden; }

.modaal-close:before, .modaal-close:after { display: block; content: " "; position: absolute; top: 14px; left: 23px; width: 4px; height: 22px; border-radius: 4px; background: #fff; transition: background 0.2s ease-in-out; }

.modaal-close:before { transform: rotate(-45deg); }

.modaal-close:after { transform: rotate(45deg); }

.modaal-fullscreen .modaal-close { background: #afb7bc; right: 10px; top: 10px; }

.modaal-content-container { padding: 30px; }

.modaal-confirm-wrap { padding: 30px 0 0; text-align: center; font-size: 0; }

.modaal-confirm-btn { font-size: 14px; display: inline-block; margin: 0 10px; vertical-align: middle; cursor: pointer; border: none; background: transparent; }

.modaal-confirm-btn.modaal-ok { padding: 10px 15px; color: #fff; background: #555; border-radius: 3px; transition: background 0.2s ease-in-out; }

.modaal-confirm-btn.modaal-ok:hover { background: #2f2f2f; }

.modaal-confirm-btn.modaal-cancel { text-decoration: underline; }

.modaal-confirm-btn.modaal-cancel:hover { text-decoration: none; color: #2f2f2f; }

@keyframes instaReveal { 0% { opacity: 0; }
  100% { opacity: 1; } }

@-o-keyframes instaReveal { 0% { opacity: 0; }
  100% { opacity: 1; } }

@-moz-keyframes instaReveal { 0% { opacity: 0; }
  100% { opacity: 1; } }

@-webkit-keyframes instaReveal { 0% { opacity: 0; }
  100% { opacity: 1; } }

@-ms-keyframes instaReveal { 0% { opacity: 0; }
  100% { opacity: 1; } }

.modaal-instagram .modaal-container { width: auto; background: transparent; box-shadow: none !important; }

.modaal-instagram .modaal-content-container { padding: 0; background: transparent; }

.modaal-instagram .modaal-content-container > blockquote { width: 1px !important; height: 1px !important; opacity: 0 !important; }

.modaal-instagram iframe { opacity: 0; margin: -6px !important; border-radius: 0 !important; width: 1000px !important; max-width: 800px !important; box-shadow: none !important; animation: instaReveal 1s linear forwards; }

.modaal-image .modaal-inner-wrapper { padding-left: 140px; padding-right: 140px; }

.modaal-image .modaal-container { width: auto; max-width: 100%; }

.modaal-gallery-wrap { position: relative; color: #fff; }

.modaal-gallery-item { display: none; }

.modaal-gallery-item img { display: block; }

.modaal-gallery-item.is_active { display: block; }

.modaal-gallery-label { position: absolute; left: 0; width: 100%; margin: 20px 0 0; font-size: 18px; text-align: center; color: #fff; }

.modaal-gallery-label:focus { outline: none; }

.modaal-gallery-control { position: absolute; top: 50%; transform: translateY(-50%); opacity: 1; cursor: pointer; color: #fff; width: 50px; height: 50px; background: rgba(0, 0, 0, 0); border: none; border-radius: 100%; transition: all 0.2s ease-in-out; }

.modaal-gallery-control.is_hidden { opacity: 0; cursor: default; }

.modaal-gallery-control:focus, .modaal-gallery-control:hover { outline: none; background: #fff; }

.modaal-gallery-control:focus:before, .modaal-gallery-control:focus:after, .modaal-gallery-control:hover:before, .modaal-gallery-control:hover:after { background: #afb7bc; }

.modaal-gallery-control span { position: absolute !important; clip: rect(1px 1px 1px 1px); /* IE6, IE7 */ clip: rect(1px, 1px, 1px, 1px); padding: 0 !important; border: 0 !important; height: 1px !important; width: 1px !important; overflow: hidden; }

.modaal-gallery-control:before, .modaal-gallery-control:after { display: block; content: " "; position: absolute; top: 16px; left: 25px; width: 4px; height: 18px; border-radius: 4px; background: #fff; transition: background 0.2s ease-in-out; }

.modaal-gallery-control:before { margin: -5px 0 0; transform: rotate(-45deg); }

.modaal-gallery-control:after { margin: 5px 0 0; transform: rotate(45deg); }

.modaal-gallery-next-inner { left: 100%; margin-left: 40px; }

.modaal-gallery-next-outer { right: 45px; }

.modaal-gallery-prev:before, .modaal-gallery-prev:after { left: 22px; }

.modaal-gallery-prev:before { margin: 5px 0 0; transform: rotate(-45deg); }

.modaal-gallery-prev:after { margin: -5px 0 0; transform: rotate(45deg); }

.modaal-gallery-prev-inner { right: 100%; margin-right: 40px; }

.modaal-gallery-prev-outer { left: 45px; }

.modaal-video-wrap { margin: auto 50px; position: relative; }

.modaal-video-container { position: relative; padding-bottom: 56.25%; height: 0; overflow: hidden; max-width: 100%; box-shadow: 0 0 10px rgba(0, 0, 0, 0.3); background: #000; max-width: 1300px; margin-left: auto; margin-right: auto; }

.modaal-video-container iframe, .modaal-video-container object, .modaal-video-container embed { position: absolute; top: 0; left: 0; width: 100%; height: 100%; }

.modaal-iframe .modaal-content { width: 100%; height: 100%; }

.modaal-iframe-elem { width: 100%; height: 100%; display: block; }

@media only screen and (min-width: 1400px) { .modaal-video-container { padding-bottom: 0; height: 731px; } }

@media only screen and (max-width: 1140px) { .modaal-image .modaal-inner-wrapper { padding-left: 25px; padding-right: 25px; }
  .modaal-gallery-control { top: auto; bottom: 20px; transform: none; background: rgba(0, 0, 0, 0.7); }
  .modaal-gallery-control:before, .modaal-gallery-control:after { background: #fff; }
  .modaal-gallery-next { left: auto; right: 20px; }
  .modaal-gallery-prev { left: 20px; right: auto; } }

@media screen and (max-width: 900px) { .modaal-instagram iframe { width: 500px !important; } }

@media screen and (max-height: 1100px) { .modaal-instagram iframe { width: 700px !important; } }

@media screen and (max-height: 1000px) { .modaal-inner-wrapper { padding-top: 60px; padding-bottom: 60px; }
  .modaal-instagram iframe { width: 600px !important; } }

@media screen and (max-height: 900px) { .modaal-instagram iframe { width: 500px !important; }
  .modaal-video-container { max-width: 900px; max-height: 510px; } }

@media only screen and (max-width: 600px) { .modaal-instagram iframe { width: 280px !important; } }

@media only screen and (max-height: 820px) { .modaal-gallery-label { display: none; } }

.modaal-loading-spinner { background: none; position: absolute; width: 200px; height: 200px; top: 50%; left: 50%; margin: -100px 0 0 -100px; transform: scale(0.25); }

@-ms-keyframes modaal-loading-spinner { 0% { opacity: 1; -ms-transform: scale(1.5); -moz-transform: scale(1.5); -webkit-transform: scale(1.5); -o-transform: scale(1.5); transform: scale(1.5); }
  100% { opacity: .1; -ms-transform: scale(1); -moz-transform: scale(1); -webkit-transform: scale(1); -o-transform: scale(1); transform: scale(1); } }

@-moz-keyframes modaal-loading-spinner { 0% { opacity: 1;
    -ms-transform: scale(1.5);
    -moz-transform: scale(1.5);
    -webkit-transform: scale(1.5);
    -o-transform: scale(1.5);
    transform: scale(1.5); }
  100% { opacity: .1;
    -ms-transform: scale(1);
    -moz-transform: scale(1);
    -webkit-transform: scale(1);
    -o-transform: scale(1);
    transform: scale(1); } }

@-webkit-keyframes modaal-loading-spinner { 0% { opacity: 1;
    -ms-transform: scale(1.5);
    -moz-transform: scale(1.5);
    -webkit-transform: scale(1.5);
    -o-transform: scale(1.5);
    transform: scale(1.5); }
  100% { opacity: .1;
    -ms-transform: scale(1);
    -moz-transform: scale(1);
    -webkit-transform: scale(1);
    -o-transform: scale(1);
    transform: scale(1); } }

@-o-keyframes modaal-loading-spinner { 0% { opacity: 1;
    -ms-transform: scale(1.5);
    -moz-transform: scale(1.5);
    -webkit-transform: scale(1.5);
    -o-transform: scale(1.5);
    transform: scale(1.5); }
  100% { opacity: .1;
    -ms-transform: scale(1);
    -moz-transform: scale(1);
    -webkit-transform: scale(1);
    -o-transform: scale(1);
    transform: scale(1); } }

@keyframes modaal-loading-spinner { 0% { opacity: 1;
    -ms-transform: scale(1.5);
    -moz-transform: scale(1.5);
    -webkit-transform: scale(1.5);
    -o-transform: scale(1.5);
    transform: scale(1.5); }
  100% { opacity: .1;
    -ms-transform: scale(1);
    -moz-transform: scale(1);
    -webkit-transform: scale(1);
    -o-transform: scale(1);
    transform: scale(1); } }

.modaal-loading-spinner > div { width: 24px; height: 24px; margin-left: 4px; margin-top: 4px; position: absolute; }

.modaal-loading-spinner > div > div { width: 100%; height: 100%; border-radius: 15px; background: #fff; }

.modaal-loading-spinner > div:nth-of-type(1) > div { -ms-animation: modaal-loading-spinner 1s linear infinite; -moz-animation: modaal-loading-spinner 1s linear infinite; -webkit-animation: modaal-loading-spinner 1s linear infinite; -o-animation: modaal-loading-spinner 1s linear infinite; animation: modaal-loading-spinner 1s linear infinite; -ms-animation-delay: 0s; -moz-animation-delay: 0s; -webkit-animation-delay: 0s; -o-animation-delay: 0s; animation-delay: 0s; }

.modaal-loading-spinner > div:nth-of-type(2) > div, .modaal-loading-spinner > div:nth-of-type(3) > div { -ms-animation: modaal-loading-spinner 1s linear infinite; -moz-animation: modaal-loading-spinner 1s linear infinite; -webkit-animation: modaal-loading-spinner 1s linear infinite; -o-animation: modaal-loading-spinner 1s linear infinite; }

.modaal-loading-spinner > div:nth-of-type(1) { -ms-transform: translate(84px, 84px) rotate(45deg) translate(70px, 0); -moz-transform: translate(84px, 84px) rotate(45deg) translate(70px, 0); -webkit-transform: translate(84px, 84px) rotate(45deg) translate(70px, 0); -o-transform: translate(84px, 84px) rotate(45deg) translate(70px, 0); transform: translate(84px, 84px) rotate(45deg) translate(70px, 0); }

.modaal-loading-spinner > div:nth-of-type(2) > div { animation: modaal-loading-spinner 1s linear infinite; -ms-animation-delay: .12s; -moz-animation-delay: .12s; -webkit-animation-delay: .12s; -o-animation-delay: .12s; animation-delay: .12s; }

.modaal-loading-spinner > div:nth-of-type(2) { -ms-transform: translate(84px, 84px) rotate(90deg) translate(70px, 0); -moz-transform: translate(84px, 84px) rotate(90deg) translate(70px, 0); -webkit-transform: translate(84px, 84px) rotate(90deg) translate(70px, 0); -o-transform: translate(84px, 84px) rotate(90deg) translate(70px, 0); transform: translate(84px, 84px) rotate(90deg) translate(70px, 0); }

.modaal-loading-spinner > div:nth-of-type(3) > div { animation: modaal-loading-spinner 1s linear infinite; -ms-animation-delay: .25s; -moz-animation-delay: .25s; -webkit-animation-delay: .25s; -o-animation-delay: .25s; animation-delay: .25s; }

.modaal-loading-spinner > div:nth-of-type(4) > div, .modaal-loading-spinner > div:nth-of-type(5) > div { -ms-animation: modaal-loading-spinner 1s linear infinite; -moz-animation: modaal-loading-spinner 1s linear infinite; -webkit-animation: modaal-loading-spinner 1s linear infinite; -o-animation: modaal-loading-spinner 1s linear infinite; }

.modaal-loading-spinner > div:nth-of-type(3) { -ms-transform: translate(84px, 84px) rotate(135deg) translate(70px, 0); -moz-transform: translate(84px, 84px) rotate(135deg) translate(70px, 0); -webkit-transform: translate(84px, 84px) rotate(135deg) translate(70px, 0); -o-transform: translate(84px, 84px) rotate(135deg) translate(70px, 0); transform: translate(84px, 84px) rotate(135deg) translate(70px, 0); }

.modaal-loading-spinner > div:nth-of-type(4) > div { animation: modaal-loading-spinner 1s linear infinite; -ms-animation-delay: .37s; -moz-animation-delay: .37s; -webkit-animation-delay: .37s; -o-animation-delay: .37s; animation-delay: .37s; }

.modaal-loading-spinner > div:nth-of-type(4) { -ms-transform: translate(84px, 84px) rotate(180deg) translate(70px, 0); -moz-transform: translate(84px, 84px) rotate(180deg) translate(70px, 0); -webkit-transform: translate(84px, 84px) rotate(180deg) translate(70px, 0); -o-transform: translate(84px, 84px) rotate(180deg) translate(70px, 0); transform: translate(84px, 84px) rotate(180deg) translate(70px, 0); }

.modaal-loading-spinner > div:nth-of-type(5) > div { animation: modaal-loading-spinner 1s linear infinite; -ms-animation-delay: .5s; -moz-animation-delay: .5s; -webkit-animation-delay: .5s; -o-animation-delay: .5s; animation-delay: .5s; }

.modaal-loading-spinner > div:nth-of-type(6) > div, .modaal-loading-spinner > div:nth-of-type(7) > div { -ms-animation: modaal-loading-spinner 1s linear infinite; -moz-animation: modaal-loading-spinner 1s linear infinite; -webkit-animation: modaal-loading-spinner 1s linear infinite; -o-animation: modaal-loading-spinner 1s linear infinite; }

.modaal-loading-spinner > div:nth-of-type(5) { -ms-transform: translate(84px, 84px) rotate(225deg) translate(70px, 0); -moz-transform: translate(84px, 84px) rotate(225deg) translate(70px, 0); -webkit-transform: translate(84px, 84px) rotate(225deg) translate(70px, 0); -o-transform: translate(84px, 84px) rotate(225deg) translate(70px, 0); transform: translate(84px, 84px) rotate(225deg) translate(70px, 0); }

.modaal-loading-spinner > div:nth-of-type(6) > div { animation: modaal-loading-spinner 1s linear infinite; -ms-animation-delay: .62s; -moz-animation-delay: .62s; -webkit-animation-delay: .62s; -o-animation-delay: .62s; animation-delay: .62s; }

.modaal-loading-spinner > div:nth-of-type(6) { -ms-transform: translate(84px, 84px) rotate(270deg) translate(70px, 0); -moz-transform: translate(84px, 84px) rotate(270deg) translate(70px, 0); -webkit-transform: translate(84px, 84px) rotate(270deg) translate(70px, 0); -o-transform: translate(84px, 84px) rotate(270deg) translate(70px, 0); transform: translate(84px, 84px) rotate(270deg) translate(70px, 0); }

.modaal-loading-spinner > div:nth-of-type(7) > div { animation: modaal-loading-spinner 1s linear infinite; -ms-animation-delay: .75s; -moz-animation-delay: .75s; -webkit-animation-delay: .75s; -o-animation-delay: .75s; animation-delay: .75s; }

.modaal-loading-spinner > div:nth-of-type(7) { -ms-transform: translate(84px, 84px) rotate(315deg) translate(70px, 0); -moz-transform: translate(84px, 84px) rotate(315deg) translate(70px, 0); -webkit-transform: translate(84px, 84px) rotate(315deg) translate(70px, 0); -o-transform: translate(84px, 84px) rotate(315deg) translate(70px, 0); transform: translate(84px, 84px) rotate(315deg) translate(70px, 0); }

.modaal-loading-spinner > div:nth-of-type(8) > div { -ms-animation: modaal-loading-spinner 1s linear infinite; -moz-animation: modaal-loading-spinner 1s linear infinite; -webkit-animation: modaal-loading-spinner 1s linear infinite; -o-animation: modaal-loading-spinner 1s linear infinite; animation: modaal-loading-spinner 1s linear infinite; -ms-animation-delay: .87s; -moz-animation-delay: .87s; -webkit-animation-delay: .87s; -o-animation-delay: .87s; animation-delay: .87s; }

.modaal-loading-spinner > div:nth-of-type(8) { -ms-transform: translate(84px, 84px) rotate(360deg) translate(70px, 0); -moz-transform: translate(84px, 84px) rotate(360deg) translate(70px, 0); -webkit-transform: translate(84px, 84px) rotate(360deg) translate(70px, 0); -o-transform: translate(84px, 84px) rotate(360deg) translate(70px, 0); transform: translate(84px, 84px) rotate(360deg) translate(70px, 0); }

/******************************************************************
project - carousel-slick
******************************************************************/
.slick-slider { position: relative; box-sizing: border-box; user-select: none; -ms-touch-action: pan-y; touch-action: pan-y; -webkit-tap-highlight-color: transparent; }

.slick-list { position: relative; overflow: hidden; display: block; margin: 0; padding: 0; }

.slick-list.dragging { cursor: pointer; cursor: hand; }

.slick-slider .slick-track, .slick-slider .slick-list { transform: translate3d(0, 0, 0); }

.slick-track { position: relative; left: 0; top: 0; display: block; margin-left: auto; margin-right: auto; }

.slick-track:before, .slick-track:after { content: ""; display: table; }

.slick-track:after { clear: both; }

.slick-loading .slick-track { visibility: hidden; }

.slick-slide { float: left; height: 100%; min-height: 1px; display: none; }

.slick-slide.slick-loading img { display: none; }

.slick-slide.dragging img { pointer-events: none; }

.slick-initialized .slick-slide { display: block; }

.slick-loading .slick-slide { visibility: hidden; }

.slick-vertical .slick-slide { display: block; height: auto; border: 1px solid transparent; }

.slick-arrow.slick-hidden { display: none; }

.slick-slider { display: none; }

.slick-slider.slick-initialized { display: block; }

.p-index_carousel { display: none; }

.p-index_carousel.slick-initialized { display: block; }

/******************************************************************
project - index_carousel
******************************************************************/
.p-index_carousel .slick-slide { line-height: 0; }

.p-index_carousel .slick-slide img { width: 100%; }

.p-index_carousel .slick-slide a { display: block; outline: 0; }

.p-index_carousel .slick-prev, .p-index_carousel .slick-next { position: absolute; top: 50%; transform: translate(0, -50%) translateZ(0); outline: none; overflow: hidden; text-indent: -999px; width: 30px; height: 30px; }

@media screen and (max-width: 768px) { .p-index_carousel .slick-prev, .p-index_carousel .slick-next { width: 20px; height: 20px; } }

.p-index_carousel .slick-prev { z-index: +1; left: 20px; position: relative; position: absolute; width: 50px; height: 50px; border: 2px solid #0164ac; border-radius: 100%; background: #0164ac; }

.p-index_carousel .slick-prev::after { position: absolute; content: ""; margin: auto; box-sizing: border-box; vertical-align: middle; top: 0; bottom: 0; right: 0; left: 0; transform: translate(3px, 0) rotate(225deg); border-top: 2px solid #fff; border-right: 2px solid #fff; width: 16px; height: 16px; transition-property: top, right, bottom, left; transition-duration: 0.3s; }

@media screen and (max-width: 768px) { .p-index_carousel .slick-prev { left: 10px; position: relative; position: absolute; width: 30px; height: 30px; }
  .p-index_carousel .slick-prev::after { position: absolute; content: ""; margin: auto; box-sizing: border-box; vertical-align: middle; top: 0; bottom: 0; right: 0; left: 0; transform: translate(1.5px, 0) rotate(225deg); border-top: 2px solid #fff; border-right: 2px solid #fff; width: 10px; height: 10px; transition-property: top, right, bottom, left; transition-duration: 0.3s; } }

@media print, screen and (min-width: 769px) { .p-index_carousel .slick-prev { transition-property: transform; transition-duration: 0.3s; }
  .p-index_carousel .slick-prev:hover { transform: translate(-5px, -50%) translateZ(0); } }

.p-index_carousel .slick-next { right: 20px; position: relative; position: absolute; width: 50px; height: 50px; border: 2px solid #0164ac; border-radius: 100%; background: #0164ac; }

.p-index_carousel .slick-next::after { position: absolute; content: ""; margin: auto; box-sizing: border-box; vertical-align: middle; top: 0; bottom: 0; right: 0; left: 0; transform: translate(-3px, 0) rotate(45deg); border-top: 2px solid #fff; border-right: 2px solid #fff; width: 16px; height: 16px; transition-property: top, right, bottom, left; transition-duration: 0.3s; }

@media screen and (max-width: 768px) { .p-index_carousel .slick-next { right: 10px; position: relative; position: absolute; width: 30px; height: 30px; }
  .p-index_carousel .slick-next::after { position: absolute; content: ""; margin: auto; box-sizing: border-box; vertical-align: middle; top: 0; bottom: 0; right: 0; left: 0; transform: translate(-1.5px, 0) rotate(45deg); border-top: 2px solid #fff; border-right: 2px solid #fff; width: 10px; height: 10px; transition-property: top, right, bottom, left; transition-duration: 0.3s; } }

@media print, screen and (min-width: 769px) { .p-index_carousel .slick-next { transition-property: transform; transition-duration: 0.3s; }
  .p-index_carousel .slick-next:hover { transform: translate(5px, -50%) translateZ(0); } }

.p-index_carousel .slick-dots { position: absolute; left: 50%; transform: translate(-50%, 0); display: flex; justify-content: center; bottom: 12px; height: 12px; }

@media screen and (max-width: 768px) { .p-index_carousel .slick-dots { bottom: 8px; height: 8px; } }

.p-index_carousel .slick-dots li { margin: 0 8px; }

@media screen and (max-width: 768px) { .p-index_carousel .slick-dots li { margin: 0 6px; } }

.p-index_carousel .slick-dots li button { display: block; outline: none; transition-property: background; transition-duration: 0.3s; overflow: hidden; text-indent: -999px; background: #d6d6d6; border-radius: 100%; width: 12px; height: 12px; }

@media screen and (max-width: 768px) { .p-index_carousel .slick-dots li button { width: 8px; height: 8px; } }

.p-index_carousel .slick-dots li button:hover { background: #bdbdbd; }

.p-index_carousel .slick-dots li.slick-active button { background: #0164ac; }

/******************************************************************
project - index_category
******************************************************************/
.p-index_category__title { font-size: 1rem; }

@media screen and (max-width: 768px) { .p-index_category__title { font-size: 0.9rem; } }

.p-index_category__title span { color: #00a9c7; }

.p-index_category__main-inner { color: #ffffff; }

@media print, screen and (min-width: 1001px) { .p-index_category { position: relative; z-index: +1; transform: translateY(18%); }
  .p-index_category__title { transform: translateY(-60%); }
  .p-index_category__title span { font-size: 2.3rem; } }

@media screen and (min-width: 1001px) and (max-width: 768px) { .p-index_category__title span { font-size: 2.07rem; } }

@media print, screen and (min-width: 1001px) { .p-index_category > div { display: flex; }
  .p-index_category__sp-img { display: none; }
  .p-index_category__main { width: 50%; position: relative; box-sizing: border-box; padding: 3% 6% 4% 0; }
  .p-index_category__main::before { position: absolute; content: ""; margin: auto; box-sizing: border-box; vertical-align: middle; top: 0; right: -20%; bottom: 0; width: 1000%; height: 100%; background: #00a9c7; }
  .p-index_category__main::after { position: absolute; content: ""; margin: auto; box-sizing: border-box; vertical-align: middle; top: 0; right: -20%; bottom: 0; width: 150%; height: 100%; background: linear-gradient(115deg, #00a9c7 18%, #66cf70 100%); }
  .p-index_category__main-inner { position: relative; z-index: +1; top: 50%; }
  .p-index_category__main-inner2 { transform: translateY(-50%); }
  .p-index_category__pc-img { position: relative; z-index: +1; width: 50%; transform: translateY(-10%); }
  .p-index_category__logo { margin-bottom: 3%; }
  .p-index_category__copy { margin-bottom: 2%; font-size: 2vw; line-height: 1.4; }
  .p-index_category__text { margin-bottom: 5%; }
  .p-index_category-next { padding-top: 5.5%; } }

@media print, screen and (min-width: 1201px) { .p-index_category__copy { font-size: 1.55rem; } }

@media screen and (min-width: 1201px) and (max-width: 768px) { .p-index_category__copy { font-size: 1.395rem; } }

@media print, screen and (min-width: 1201px) { .p-index_category-next { padding-top: 3.3rem; } }

@media print, screen and (max-width: 1000px) { .p-index_category__title { text-align: center; padding: 1.5rem 0 0.75rem 0; }
  .p-index_category__title span { font-size: 1.9rem; } }

@media screen and (max-width: 1000px) and (max-width: 768px) { .p-index_category__title span { font-size: 1.71rem; } }

@media print, screen and (max-width: 1000px) { .p-index_category__sp-img { position: relative; padding-top: 33.33333%; }
  .p-index_category__sp-img span { padding-top: 50%; box-sizing: border-box; position: absolute; top: 0; background-position: center 16%; background-repeat: no-repeat; background-size: cover; width: 130%; left: 50%; transform: translateX(-50%); }
  .p-index_category__main { position: relative; background: linear-gradient(135deg, #00a9c7 18%, #66cf70 100%); text-align: center; }
  .p-index_category__main-inner { padding: 4%; }
  .p-index_category__pc-img { display: none; }
  .p-index_category__logo { margin-bottom: 4%; }
  .p-index_category__logo img { max-width: 38%; }
  .p-index_category__copy { margin-bottom: 5%; font-size: 1.3rem; line-height: 1.4; } }

@media screen and (max-width: 1000px) and (max-width: 768px) { .p-index_category__copy { font-size: 1.17rem; } }

@media print, screen and (max-width: 1000px) { .p-index_category__text { margin-bottom: 5%; } }

@media screen and (max-width: 768px) { .p-index_category__main-inner { padding: 8%; } }

/******************************************************************
project - news-area
******************************************************************/
.p-news-area { display: flex; align-items: center; }

@media screen and (max-width: 768px) { .p-news-area { display: block; } }

.p-news-area__title { width: 24%; }

@media screen and (max-width: 768px) { .p-news-area__title { width: 100%; margin-bottom: 1.125rem; } }

.p-news-area__title-inner { display: inline-block; text-align: center; }

.p-news-area__title-inner > *:not(:last-child) { margin-bottom: 0.5rem; }

@media screen and (max-width: 768px) { .p-news-area__title-inner { display: block; }
  .p-news-area__title-inner > *:not(:last-child) { margin-bottom: 0.375rem; } }

.p-news-area__main { width: 76%; }

@media screen and (max-width: 768px) { .p-news-area__main { width: 100%; } }

/******************************************************************
project - product-pickup
******************************************************************/
.p-product-pickup { display: flex; flex-wrap: wrap; margin-bottom: -1rem; }

.p-product-pickup--center { justify-content: center; }

@media screen and (max-width: 768px) { .p-product-pickup { margin-bottom: -0.75rem; } }

.p-product-pickup__item { box-sizing: border-box; border-right: 1px solid #d8d8d8; margin-bottom: 1rem; text-align: center; padding-top: 1rem; padding-bottom: 1rem; }

.p-product-pickup__item:first-child { border-left: 1px solid #d8d8d8; }

.p-product-pickup__item--col3 { width: 33.33333%; }

.p-product-pickup__item--col3:nth-child(3n+1) { border-left: 1px solid #d8d8d8; }

.p-product-pickup__item--col4 { width: 25%; }

.p-product-pickup__item--col4:nth-child(4n+1) { border-left: 1px solid #d8d8d8; }

.p-product-pickup__item--col5 { width: 20%; }

.p-product-pickup__item--col5:nth-child(5n+1) { border-left: 1px solid #d8d8d8; }

@media screen and (max-width: 768px) { .p-product-pickup__item { margin-bottom: 0.75rem; padding-top: 0.75rem; padding-bottom: 0.75rem; }
  .p-product-pickup__item--col3 { width: 50%; }
  .p-product-pickup__item--col3:nth-child(3n+1) { border-left: 0; }
  .p-product-pickup__item--col3:nth-child(odd) { border-left: 1px solid #d8d8d8; }
  .p-product-pickup__item--col4 { width: 50%; }
  .p-product-pickup__item--col4:nth-child(4n+1) { border-left: 0; }
  .p-product-pickup__item--col4:nth-child(odd) { border-left: 1px solid #d8d8d8; }
  .p-product-pickup__item--col5 { width: 50%; }
  .p-product-pickup__item--col5:nth-child(5n+1) { border-left: 0; }
  .p-product-pickup__item--col5:nth-child(odd) { border-left: 1px solid #d8d8d8; } }

.p-product-pickup a { display: inline-block; color: inherit; text-decoration: none; transition-property: opacity; transition-duration: 0.3s; box-sizing: border-box; padding-left: 0.5rem; padding-right: 0.5rem; }

.p-product-pickup a:hover { color: inherit; text-decoration: none; }

@media screen and (max-width: 768px) { .p-product-pickup a { padding-left: 0.375rem; padding-right: 0.375rem; } }

.p-product-pickup a:hover { opacity: 0.7; }

.p-product-pickup__img { margin-bottom: 1rem; }

.p-product-pickup__img img { max-width: 80%; }

@media screen and (max-width: 768px) { .p-product-pickup__img { margin-bottom: 0.75rem; } }

.p-product-pickup__name { display: block; font-weight: bold; line-height: 1.4; margin-top: 0.5rem; font-size: 1.2rem; }

@media screen and (max-width: 768px) { .p-product-pickup__name { font-size: 1.08rem; } }

@media screen and (max-width: 768px) { .p-product-pickup__name { font-size: 1.1rem; margin-top: 0.375rem; } }

@media screen and (max-width: 768px) and (max-width: 768px) { .p-product-pickup__name { font-size: 0.99rem; } }

.p-product-pickup__model { display: inline-block; line-height: 1.6; font-size: 0.9rem; }

@media screen and (max-width: 768px) { .p-product-pickup__model { font-size: 0.81rem; } }

.p-about-bg { background-color: #e8f6f8; }

/******************************************************************
project - about-nav
******************************************************************/
.p-about-nav { display: flex; }

.p-about-nav__item { margin-right: 2rem; }

.p-about-nav-sp { display: none; }

@media screen and (max-width: 768px) { .p-about-nav-sp { display: block; } }

.p-about-nav-sp__item { border-bottom: 1px solid #d8d8d8; padding: 0.5em 0.8em; }

/******************************************************************
project - about-title
******************************************************************/
.p-about-title { text-align: center; color: #0063a9; font-size: 200%; font-weight: bold; }

@media screen and (max-width: 768px) { .p-about-title { font-size: 150%; } }

/******************************************************************
project - about-overlap-img
******************************************************************/
@media print, screen and (min-width: 1001px) { .p-about-overlap-img { position: relative; box-sizing: border-box; }
  .p-about-overlap-img__body-left { position: absolute; left: 0; width: 65%; top: 50%; transform: translateY(-50%); z-index: +1; }
  .p-about-overlap-img__img-right { margin-left: auto; width: 45%; }
  .p-about-overlap-img__img-right img { width: 100%; }
  .p-about-overlap-img__body-right { position: absolute; right: 0; width: 65%; top: 50%; transform: translateY(-50%); z-index: +1; }
  .p-about-overlap-img__img-left { margin-right: auto; width: 45%; }
  .p-about-overlap-img__img-left img { width: 100%; }
  .p-about-overlap-img__body-left, .p-about-overlap-img__body-right { box-sizing: border-box; background-color: #fff; padding: 2.5rem; font-size: 95%; }
  .p-about-overlap-img__body-left > *:not(:last-child), .p-about-overlap-img__body-right > *:not(:last-child) { margin-bottom: 1rem; } }

@media screen and (min-width: 1001px) and (max-width: 768px) { .p-about-overlap-img__body-left > *:not(:last-child), .p-about-overlap-img__body-right > *:not(:last-child) { margin-bottom: 0.75rem; } }

@media print, screen and (min-width: 1001px) { .p-about-overlap-img__title { color: #0063a9; line-height: 1.4; font-size: 150%; } }

@media print, screen and (max-width: 1200px) { .p-about-overlap-img__body-left, .p-about-overlap-img__body-right { padding: 2vw; font-size: 90%; } }

@media print, screen and (max-width: 1000px) { .p-about-overlap-img { position: relative; box-sizing: border-box; display: flex; flex-direction: column; }
  .p-about-overlap-img__body-left { order: 2; margin-left: auto; margin-right: auto; width: 90%; position: relative; z-index: +1; margin-top: -10%; }
  .p-about-overlap-img__img-right { order: 1; text-align: center; }
  .p-about-overlap-img__body-right { order: 2; margin-left: auto; margin-right: auto; width: 90%; position: relative; z-index: +1; margin-top: -10%; }
  .p-about-overlap-img__img-left { order: 1; text-align: center; }
  .p-about-overlap-img__body-left, .p-about-overlap-img__body-right { box-sizing: border-box; background-color: #fff; padding: 0.75rem; }
  .p-about-overlap-img__body-left > *:not(:last-child), .p-about-overlap-img__body-right > *:not(:last-child) { margin-bottom: 1rem; } }

@media screen and (max-width: 1000px) and (max-width: 768px) { .p-about-overlap-img__body-left > *:not(:last-child), .p-about-overlap-img__body-right > *:not(:last-child) { margin-bottom: 0.75rem; } }

@media print, screen and (max-width: 1000px) { .p-about-overlap-img__title { color: #0063a9; font-size: 120%; line-height: 1.4; } }

/******************************************************************
project - _about-field
******************************************************************/
.p-about-field-nav__head { position: relative; outline: 0; cursor: pointer; transition-property: background; transition-duration: 0.3s; }

.p-about-field-nav__head:not(:first-child) { border-top: 1px solid #c3c3c3; }

.p-about-field-nav__head--water { color: #0063a9; }

.p-about-field-nav__head--air { color: #db8a2b; }

.p-about-field-nav__head--gas { color: #8db823; }

.p-about-field-nav__head--science { color: #857db5; }

.p-about-field-nav__head--medical { color: #63aeb5; }

.p-about-field-nav__head--water:hover, .p-about-field-nav__head--water[aria-expanded="true"] { background-color: #ebf7f9; }

.p-about-field-nav__head--air:hover, .p-about-field-nav__head--air[aria-expanded="true"] { background-color: #fffdec; }

.p-about-field-nav__head--gas:hover, .p-about-field-nav__head--gas[aria-expanded="true"] { background-color: #f6f8f0; }

.p-about-field-nav__head--science:hover, .p-about-field-nav__head--science[aria-expanded="true"] { background-color: #f6f6fa; }

.p-about-field-nav__head--medical:hover, .p-about-field-nav__head--medical[aria-expanded="true"] { background-color: #f4faf5; }

.p-about-field-nav__head[aria-expanded="true"] .p-about-field-nav__icon span::after { height: 0; }

@media print, screen and (min-width: 769px) { .p-about-field-nav__icon { position: absolute; display: block; top: calc(50% - 21px); right: 1rem; width: 42px; height: 42px; border: 1px solid #c3c3c3; border-radius: 100%; background-color: #fff; }
  .p-about-field-nav__icon span { position: absolute; top: 13px; left: 13px; width: 16px; height: 16px; display: block; position: relative; }
  .p-about-field-nav__icon span::before, .p-about-field-nav__icon span::after { position: absolute; content: ""; margin: auto; box-sizing: border-box; vertical-align: middle; }
  .p-about-field-nav__icon span::before { border-top: 1px solid #969696; width: 16px; height: 0; top: 0; bottom: 0; right: 0; }
  .p-about-field-nav__icon span::after { border-left: 1px solid #969696; width: 0; height: 16px; top: 0; bottom: 0; right: 7px; transition-property: all; transition-duration: 0.3s; } }

@media screen and (max-width: 768px) { .p-about-field-nav__icon { position: absolute; display: block; top: calc(50% - 12px); right: 0.75rem; width: 24px; height: 24px; border: 1px solid #c3c3c3; border-radius: 100%; background-color: #fff; }
  .p-about-field-nav__icon span { position: absolute; top: 8px; left: 8px; width: 9px; height: 9px; display: block; position: relative; }
  .p-about-field-nav__icon span::before, .p-about-field-nav__icon span::after { position: absolute; content: ""; margin: auto; box-sizing: border-box; vertical-align: middle; }
  .p-about-field-nav__icon span::before { border-top: 1px solid #969696; width: 9px; height: 0; top: 0; bottom: 0; right: 0; }
  .p-about-field-nav__icon span::after { border-left: 1px solid #969696; width: 0; height: 9px; top: 0; bottom: 0; right: 4px; transition-property: all; transition-duration: 0.3s; } }

.p-about-field-nav__headinner { display: block; text-align: center; font-weight: normal; padding: 1rem 3rem; }

@media screen and (max-width: 768px) { .p-about-field-nav__headinner { font-size: 14px; padding: 1rem 2.25rem; } }

.p-about-field-nav__headinner > span { display: block; letter-spacing: 3px; font-size: 220%; }

.p-about-field-nav__body { display: none; }

.p-about-field-water, .p-about-field-air, .p-about-field-gas, .p-about-field-science, .p-about-field-medical { padding: 0 2rem 4rem 2rem; }

@media screen and (max-width: 768px) { .p-about-field-water, .p-about-field-air, .p-about-field-gas, .p-about-field-science, .p-about-field-medical { padding: 0 0.75rem 1.125rem 0.75rem; } }

.p-about-field-water__copy, .p-about-field-air__copy, .p-about-field-gas__copy, .p-about-field-science__copy, .p-about-field-medical__copy { text-align: center; }

.p-about-field-water__copy > span, .p-about-field-air__copy > span, .p-about-field-gas__copy > span, .p-about-field-science__copy > span, .p-about-field-medical__copy > span { display: inline-block; text-align: left; }

.p-about-field-water { background-color: #ebf7f9; }

.p-about-field-water__copy { color: #0063a9; }

.p-about-field-water__main { text-align: center; }

.p-about-field-water__title { text-align: center; font-size: 150%; letter-spacing: 2px; }

@media print, screen and (min-width: 1001px) { .p-about-field-water-prod { max-width: 80%; margin-left: auto; margin-right: auto; } }

.p-about-field-water-prod__item { background-color: #fff; border: 1px solid #0063a9; }

.p-about-field-water-prod__title { background-color: #0063a9; color: #fff; text-align: center; font-weight: normal; padding: 0.2em; }

.p-about-field-water-prod__main { padding: 1rem 1rem 1rem 1rem; }

.p-about-field-water-prod__name { font-size: 200%; color: #0063a9; text-align: center; font-weight: bold; line-height: 1.3; }

.p-about-field-water-prod__img { text-align: center; }

@media screen and (max-width: 768px) { .p-about-field-water-prod__img img { max-width: 130px; } }

.p-about-field-water-prod__btn { text-align: center; }

.p-about-field-water-prod__btn a { box-sizing: border-box; display: block; max-width: 80%; margin-left: auto; margin-right: auto; background-color: #efefef; border-radius: 100px; font-size: 90%; color: inherit; transition-property: background; transition-duration: 0.3s; position: relative; padding-right: 18.5px; padding: 0.4em 1.8em 0.4em 1.2em; }

.p-about-field-water-prod__btn a::after { position: absolute; content: ""; margin: auto; box-sizing: border-box; vertical-align: middle; top: 0; bottom: 0; right: 0; transform: translate(-12px, 2.5px) rotate(45deg); transform-origin: top right; border-top: 2px solid #4f4f4f; border-right: 2px solid #4f4f4f; width: 7px; height: 7px; transition-property: top, right, bottom, left; transition-duration: 0.3s; }

.p-about-field-water-prod__btn a:hover { text-decoration: none; background-color: #eaeaea; }

.p-about-field-air { background-color: #fffdec; }

.p-about-field-air__copy { color: #db8a2b; }

.p-about-field-air__title { text-align: center; font-size: 150%; letter-spacing: 2px; }

.p-about-field-air-main { border: 1px solid #e48b17; }

.p-about-field-air-main__title { background-color: #e48b17; color: #fff; text-align: center; font-size: 110%; font-weight: normal; padding: 0.2em; }

.p-about-field-air-main__main { background-color: #fff; padding: 3rem; }

@media screen and (max-width: 768px) { .p-about-field-air-main__main { padding: 0.75rem; } }

.p-about-field-air-main__catch { color: #e48b17; text-align: center; font-weight: bold; font-size: 150%; }

@media screen and (max-width: 768px) { .p-about-field-air-main__catch { font-size: 130%; } }

.p-about-field-air-main__copy { text-align: center; }

.p-about-field-air-main__copy span { display: inline-block; text-align: left; }

.p-about-field-air-block { border: 1px solid #e48b17; }

.p-about-field-air-block__title { border-bottom: 1px solid #e48b17; color: #e48b17; text-align: center; font-size: 120%; padding: 0.2em; }

.p-about-field-air-block__main { padding: 1rem; }

@media screen and (max-width: 768px) { .p-about-field-air-block__main { padding: 0.75rem; } }

.p-about-field-air-block__copy { color: #e48b17; font-size: 120%; }

@media print, screen and (min-width: 1001px) { .p-about-field-air-prod { max-width: 80%; margin-left: auto; margin-right: auto; } }

.p-about-field-air-prod__item { background-color: #fff; border: 1px solid #e48b17; }

.p-about-field-air-prod__title { background-color: #e48b17; color: #fff; text-align: center; font-weight: normal; padding: 0.2em; }

.p-about-field-air-prod__main { padding: 1rem 1rem 1rem 1rem; }

.p-about-field-air-prod__name { font-size: 200%; color: #e48b17; text-align: center; font-weight: bold; line-height: 1.3; }

.p-about-field-air-prod__img { text-align: center; }

@media screen and (max-width: 768px) { .p-about-field-air-prod__img img { max-width: 130px; } }

.p-about-field-air-prod__btn { text-align: center; }

.p-about-field-air-prod__btn a { box-sizing: border-box; display: block; max-width: 80%; margin-left: auto; margin-right: auto; background-color: #efefef; border-radius: 100px; font-size: 90%; color: inherit; transition-property: background; transition-duration: 0.3s; position: relative; padding-right: 18.5px; padding: 0.4em 1.8em 0.4em 1.2em; }

.p-about-field-air-prod__btn a::after { position: absolute; content: ""; margin: auto; box-sizing: border-box; vertical-align: middle; top: 0; bottom: 0; right: 0; transform: translate(-12px, 2.5px) rotate(45deg); transform-origin: top right; border-top: 2px solid #4f4f4f; border-right: 2px solid #4f4f4f; width: 7px; height: 7px; transition-property: top, right, bottom, left; transition-duration: 0.3s; }

.p-about-field-air-prod__btn a:hover { text-decoration: none; background-color: #eaeaea; }

.p-about-field-gas { background-color: #f6f8f0; }

.p-about-field-gas__copy { color: #8db823; }

@media print, screen and (min-width: 1001px) { .p-about-field-gas-prod { max-width: 80%; margin-left: auto; margin-right: auto; } }

.p-about-field-gas-prod__item { background-color: #fff; border: 1px solid #8db823; }

.p-about-field-gas-prod__title { background-color: #8db823; color: #fff; text-align: center; font-weight: normal; padding: 0.2em; }

.p-about-field-gas-prod__main { padding: 1rem 1rem 1rem 1rem; }

.p-about-field-gas-prod__name { font-size: 200%; color: #8db823; font-weight: bold; line-height: 1.3; }

@media screen and (max-width: 768px) { .p-about-field-gas-prod__name { text-align: center; } }

.p-about-field-gas-prod__name span { display: inline-block; font-size: 14px; border: 1px solid #8db823; background-color: #fbfff2; padding: 0.2em; }

.p-about-field-gas-prod__img { text-align: center; }

@media screen and (max-width: 768px) { .p-about-field-gas-prod__img img { max-width: 130px; } }

@media screen and (max-width: 768px) { .p-about-field-gas-prod__btn { text-align: center; } }

.p-about-field-gas-prod__btn a { box-sizing: border-box; display: inline-block; background-color: #efefef; border-radius: 100px; font-size: 90%; color: inherit; transition-property: background; transition-duration: 0.3s; position: relative; padding-right: 18.5px; padding: 0.4em 1.8em 0.4em 1.2em; }

@media screen and (max-width: 768px) { .p-about-field-gas-prod__btn a { margin-left: auto; margin-right: auto; } }

.p-about-field-gas-prod__btn a::after { position: absolute; content: ""; margin: auto; box-sizing: border-box; vertical-align: middle; top: 0; bottom: 0; right: 0; transform: translate(-12px, 2.5px) rotate(45deg); transform-origin: top right; border-top: 2px solid #4f4f4f; border-right: 2px solid #4f4f4f; width: 7px; height: 7px; transition-property: top, right, bottom, left; transition-duration: 0.3s; }

.p-about-field-gas-prod__btn a:hover { text-decoration: none; background-color: #eaeaea; }

.p-about-field-science { background-color: #f6f6fa; }

.p-about-field-science__copy { color: #857db5; }

@media print, screen and (min-width: 1001px) { .p-about-field-science-prod { max-width: 80%; margin-left: auto; margin-right: auto; } }

.p-about-field-science-prod__item { background-color: #fff; border: 1px solid #857db5; }

.p-about-field-science-prod__title { background-color: #857db5; color: #fff; text-align: center; font-weight: normal; padding: 0.2em; }

.p-about-field-science-prod__main { padding: 1rem 1rem 1rem 1rem; }

.p-about-field-science-prod__name { font-size: 200%; color: #857db5; font-weight: bold; line-height: 1.3; }

@media screen and (max-width: 768px) { .p-about-field-science-prod__name { text-align: center; } }

.p-about-field-science-prod__name span { display: inline-block; font-size: 14px; border: 1px solid #857db5; background-color: #faf9ff; padding: 0.2em; }

.p-about-field-science-prod__img { text-align: center; }

@media screen and (max-width: 768px) { .p-about-field-science-prod__img img { max-width: 130px; } }

@media screen and (max-width: 768px) { .p-about-field-science-prod__btn { text-align: center; } }

.p-about-field-science-prod__btn a { box-sizing: border-box; display: inline-block; background-color: #efefef; border-radius: 100px; font-size: 90%; color: inherit; transition-property: background; transition-duration: 0.3s; position: relative; padding-right: 18.5px; padding: 0.4em 1.8em 0.4em 1.2em; }

@media screen and (max-width: 768px) { .p-about-field-science-prod__btn a { margin-left: auto; margin-right: auto; } }

.p-about-field-science-prod__btn a::after { position: absolute; content: ""; margin: auto; box-sizing: border-box; vertical-align: middle; top: 0; bottom: 0; right: 0; transform: translate(-12px, 2.5px) rotate(45deg); transform-origin: top right; border-top: 2px solid #4f4f4f; border-right: 2px solid #4f4f4f; width: 7px; height: 7px; transition-property: top, right, bottom, left; transition-duration: 0.3s; }

.p-about-field-science-prod__btn a:hover { text-decoration: none; background-color: #eaeaea; }

.p-about-field-medical { background-color: #f4faf5; }

.p-about-field-medical__copy { color: #63aeb5; }

.p-about-field-medical-main { border: 1px solid #63aeb5; }

@media print, screen and (min-width: 1001px) { .p-about-field-medical-main { max-width: 80%; margin-left: auto; margin-right: auto; } }

.p-about-field-medical-main__title { background-color: #63aeb5; color: #fff; text-align: center; font-size: 110%; font-weight: normal; padding: 0.2em; }

.p-about-field-medical-main__main { background-color: #fff; padding: 3rem; }

@media screen and (max-width: 768px) { .p-about-field-medical-main__main { padding: 0.75rem; } }

.p-about-field-medical-main__catch { color: #63aeb5; text-align: center; font-weight: bold; font-size: 150%; }

@media screen and (max-width: 768px) { .p-about-field-medical-main__catch { font-size: 130%; } }

.p-about-field-medical-main__copy { text-align: center; }

.p-about-field-medical-main__copy span { display: inline-block; text-align: left; }

.p-about-field-medical-prod__name { font-size: 200%; color: #63aeb5; font-weight: bold; line-height: 1.3; }

@media screen and (max-width: 768px) { .p-about-field-medical-prod__name { text-align: center; } }

.p-about-field-medical-prod__name span { display: inline-block; font-size: 14px; border: 1px solid #63aeb5; background-color: #f4feff; padding: 0.2em; }

.p-about-field-medical-prod__img { text-align: center; }

@media screen and (max-width: 768px) { .p-about-field-medical-prod__img img { max-width: 130px; } }

@media screen and (max-width: 768px) { .p-about-field-medical-prod__btn { text-align: center; } }

.p-about-field-medical-prod__btn a { box-sizing: border-box; display: inline-block; background-color: #efefef; border-radius: 100px; font-size: 90%; color: inherit; transition-property: background; transition-duration: 0.3s; position: relative; padding-right: 18.5px; padding: 0.4em 1.8em 0.4em 1.2em; }

@media screen and (max-width: 768px) { .p-about-field-medical-prod__btn a { margin-left: auto; margin-right: auto; } }

.p-about-field-medical-prod__btn a::after { position: absolute; content: ""; margin: auto; box-sizing: border-box; vertical-align: middle; top: 0; bottom: 0; right: 0; transform: translate(-12px, 2.5px) rotate(45deg); transform-origin: top right; border-top: 2px solid #4f4f4f; border-right: 2px solid #4f4f4f; width: 7px; height: 7px; transition-property: top, right, bottom, left; transition-duration: 0.3s; }

.p-about-field-medical-prod__btn a:hover { text-decoration: none; background-color: #eaeaea; }

.p-about-jirei-nav__catch { font-size: 130%; text-align: center; font-weight: bold; }

.p-about-jirei-nav__copy { text-align: center; }

.p-about-jirei-nav__title { color: #0063a9; text-align: center; }

/******************************************************************
project - about-global
******************************************************************/
.p-about-global-text { margin-left: auto; margin-right: auto; max-width: 940px; }

.p-about-global-block { margin-left: auto; margin-right: auto; max-width: 940px; background-color: #ebf7f9; padding: 1rem; }

.p-about-global-block__inner { background-color: #fff; }

.p-about-global-block__title { background-color: #00a9c5; color: #fff; text-align: center; font-size: 120%; padding: 0.3em 0.5em 0.2em 0.5em; }

.p-about-global-block__main { padding: 1rem; }

.p-about-global-block__note { background-color: #fbf9e4; padding: 1rem; }

/******************************************************************
project - about-future
******************************************************************/
.p-about-future-copy { text-align: center; font-weight: bold; font-size: 130%; }

@media screen and (max-width: 768px) { .p-about-future-copy { font-size: 110%; } }

.p-about-future-list { margin-left: auto; margin-right: auto; max-width: 800px; text-align: center; }

.p-about-future-prod { margin-left: auto; margin-right: auto; max-width: 830px; }

@media print, screen and (min-width: 769px) { .p-about-future-prod__inner { display: flex; }
  .p-about-future-prod__inner p { width: 28%; background-color: #fbf9e4; border: 2px solid #0063a9; color: #0063a9; line-height: 1.6; font-weight: bold; font-size: 130%; display: flex; align-items: center; }
  .p-about-future-prod__inner p span { display: block; width: 100%; text-align: center; padding: 1rem; }
  .p-about-future-prod__inner div { width: 8%; display: flex; align-items: center; }
  .p-about-future-prod__inner div span { display: block; width: 100%; text-align: center; } }

@media screen and (max-width: 768px) { .p-about-future-prod__inner p { background-color: #fbf9e4; border: 2px solid #0063a9; color: #0063a9; line-height: 1.6; font-weight: bold; font-size: 120%; }
  .p-about-future-prod__inner p span { display: block; text-align: center; padding: 0.75rem; }
  .p-about-future-prod__inner div span { display: block; text-align: center; padding-top: 0.75rem; padding-bottom: 0.75rem; } }

.p-about-future-prod__arrow { text-align: center; padding: 1rem; }

@media screen and (max-width: 768px) { .p-about-future-prod__arrow { padding: 0.75rem; } }

@media print, screen and (min-width: 769px) { .p-about-future-prod__bottom { background-color: #fbf9e4; border: 2px solid #0063a9; color: #0063a9; line-height: 1.6; font-weight: bold; font-size: 130%; text-align: center; padding-top: 1rem; padding-bottom: 1rem; } }

@media screen and (max-width: 768px) { .p-about-future-prod__bottom { background-color: #fbf9e4; border: 2px solid #0063a9; color: #0063a9; line-height: 1.6; font-weight: bold; font-size: 120%; text-align: center; padding: 0.75rem; } }

.p-about-future-init { margin-left: auto; margin-right: auto; max-width: 830px; }

.p-about-future-init__item { display: flex; align-items: center; background-color: #e8f6f8; border-radius: 300px; padding: 1rem; }

.p-about-future-init__title { min-width: 4em; font-size: 140%; }

@media screen and (max-width: 768px) { .p-about-future-init__title { font-size: 120%; } }

.p-about-future-init__title .c-feature-ratio { padding-top: 100%; }

.p-about-future-init__title .c-vertical-area { background-color: #00a9c5; color: #fff; border-radius: 100%; }

.p-about-future-init__title .c-vertical-area__inner { text-align: center; letter-spacing: 2px; }

.p-about-future-init__copy { font-weight: bold; color: #4f4f4f; line-height: 1.4; font-size: 140%; padding-left: 1em; }

@media screen and (max-width: 768px) { .p-about-future-init__copy { padding-left: 0.5em; font-size: 120%; } }

/******************************************************************
project - product-head-search
******************************************************************/
.p-product-head-search__menu { display: flex; flex-wrap: wrap; font-size: 1.1rem; }

@media screen and (max-width: 768px) { .p-product-head-search__menu { font-size: 0.99rem; } }

.p-product-head-search__menu > *:not(:last-child) { margin-right: 2rem; }

.p-product-head-search__menu > *:not(:last-child) a { display: inline-block; position: relative; padding-right: 9px; padding-right: 1em; }

.p-product-head-search__menu > *:not(:last-child) a::after { position: absolute; content: ""; margin: auto; box-sizing: border-box; vertical-align: middle; top: 0; bottom: 0; right: 0; transform: translate(0px, 1.25px) rotate(45deg); transform-origin: top right; border-bottom: 1px solid #0164ac; border-right: 1px solid #0164ac; width: 7px; height: 7px; transition-property: top, right, bottom, left; transition-duration: 0.3s; }

.p-product-head-search__menu > *:last-child { margin-left: auto; }

.p-product-head-search__menu > *:last-child a { color: inherit; text-decoration: none; }

.p-product-head-search__menu > *:last-child a:hover { color: inherit; text-decoration: none; }

.p-product-head-search__menu > *:last-child a img { width: 21px; padding-bottom: 4px; padding-right: 5px; }

.p-product-head-search__main { display: none; background: #0e65ad url(/common/images/re2_bg_product.png) center center/cover no-repeat; text-align: center; color: #ffffff; }

.p-sp-product-head-search { display: none; background: #0e65ad url(/common/images/re2_bg_product.png) center center no-repeat; text-align: center; color: #ffffff; }

.p-product-head-search__block { display: none; }

@media print, screen and (min-width: 1201px) { .p-product-head-search__block { margin-right: 50px; margin-left: 50px; } }

/******************************************************************
project product-search__form
******************************************************************/
@media print, screen and (min-width: 769px) { .p-product-head-search__form { display: none; }
  .p-product-head-search__form-inner { background-color: #ffffff; border-radius: 60px; padding: 0.5rem 1rem; }
  .p-product-head-search__form .mf_finder_searchBox_items { padding: 0; }
  .p-product-head-search__form .mf_finder_searchBox_suggest_items { text-align: left; }
  .p-product-head-search__form .mf_finder_searchBox_suggest_item { padding-left: 0.4em; }
  .p-product-head-search__form input[type="text"] { font-size: 1.2rem; outline: 0; border: 0; } }

@media screen and (min-width: 769px) and (max-width: 768px) { .p-product-head-search__form input[type="text"] { font-size: 1.08rem; } }

@media print, screen and (min-width: 769px) { .p-product-head-search__form .mf_finder_searchBox_submit { display: block; width: 33px; height: 33px; background-color: transparent; border-radius: 0; padding: 0; transition-property: opacity; transition-duration: 0.3s; }
  .p-product-head-search__form .mf_finder_searchBox_submit::after { content: ''; display: inline-block; width: 23px; height: 23px; background-image: url(/common/images/re2_icon_search.png); background-size: contain; vertical-align: middle; }
  .p-product-head-search__form .mf_finder_searchBox_submit:hover { opacity: 0.6; }
  .p-product-head-search__form .mf_finder_searchBox_submit::before { display: none; }
  .p-product-head-search__form .mf_finder_searchBox_submit span { position: absolute; width: 0px; height: 0px; top: -999px; overflow: hidden; } }

@media print, screen and (min-width: 1201px) { .p-product-head-search__form-inner { margin-right: 50px; margin-left: 50px; } }

@media screen and (max-width: 768px) { .p-product-head-search__form-inner { background-color: #ffffff; border-radius: 60px; padding: 0.375rem 0.75rem; }
  .p-product-head-search__form .mf_finder_searchBox { margin: 0; }
  .p-product-head-search__form .mf_finder_searchBox_items { padding: 0; }
  .p-product-head-search__form .mf_finder_searchBox_suggest_items { text-align: left; }
  .p-product-head-search__form .mf_finder_searchBox_suggest_item { padding-left: 0.4em; }
  .p-product-head-search__form input[type="text"] { font-size: 1.2rem; outline: 0; border: 0; } }

@media screen and (max-width: 768px) and (max-width: 768px) { .p-product-head-search__form input[type="text"] { font-size: 1.08rem; } }

@media screen and (max-width: 768px) { .p-product-head-search__form .mf_finder_searchBox_submit { display: block; width: 33px; height: 33px; background-color: transparent; border-radius: 0; padding: 0; }
  .p-product-head-search__form .mf_finder_searchBox_submit::after { content: ''; display: inline-block; width: 20px; height: 20px; background-image: url(/common/images/re2_icon_search.png); background-size: contain; vertical-align: middle; }
  .p-product-head-search__form .mf_finder_searchBox_submit::before { display: none; }
  .p-product-head-search__form .mf_finder_searchBox_submit span { position: absolute; width: 0px; height: 0px; top: -999px; overflow: hidden; } }

/******************************************************************
project p-product-head-search__list
******************************************************************/
.p-product-head-search__list { text-align: left; }

.p-product-head-search__list-inner { display: flex; flex-wrap: wrap; margin-top: -30px; margin-right: -30px; font-size: 95%; }

.p-product-head-search__list-column { width: calc(33.33333% - 30px); margin-top: 30px; margin-right: 30px; }

.p-product-head-search__list-column > *:not(:last-child) { margin-bottom: 30px; }

.p-product-head-search__list-title { font-size: 22px; margin-bottom: 6px; }

.p-product-head-search__list-item a { display: inline-block; color: #fff; position: relative; padding-left: 5.5px; padding-left: 15px; }

.p-product-head-search__list-item a::after { position: absolute; content: ""; margin: auto; box-sizing: border-box; vertical-align: middle; top: 0; left: 0; transform: translate(5.5px, 0.8em) rotate(135deg); transform-origin: top left; border-top: 1px solid #fff; border-left: 1px solid #fff; width: 7px; height: 7px; transition-property: top, right, bottom, left; transition-duration: 0.3s; }

/******************************************************************
project - product-search
******************************************************************/
.p-product-search { background: #0e65ad url(/common/images/re2_bg_product.png) top center/cover no-repeat; text-align: center; color: #ffffff; }

.p-product-search__title { font-size: 2.4rem; line-height: 1.4; font-weight: normal; }

@media screen and (max-width: 768px) { .p-product-search__title { font-size: 2.16rem; } }

@media screen and (max-width: 768px) { .p-product-search__title { font-size: 1.8rem; } }

@media screen and (max-width: 768px) and (max-width: 768px) { .p-product-search__title { font-size: 1.62rem; } }

.p-product-search__title span { display: block; font-size: 0.8rem; }

@media screen and (max-width: 768px) { .p-product-search__title span { font-size: 0.72rem; } }

/******************************************************************
project - product-search__main
******************************************************************/
@media print, screen and (min-width: 769px) { .p-product-search__menu { display: flex; justify-content: center; cursor: pointer; font-size: 1.4rem; margin-bottom: 1rem; } }

@media screen and (min-width: 769px) and (max-width: 768px) { .p-product-search__menu { font-size: 1.26rem; } }

@media print, screen and (min-width: 769px) { .p-product-search__menu > *:not(:last-child) { margin-right: 1.8rem; }
  .p-product-search__menu li { outline: 0; text-align: center; transition-property: color; transition-duration: 0.3s; }
  .p-product-search__menu li:hover { color: #f8fbc5; }
  .p-product-search__menu li[aria-expanded="true"] { font-weight: bold; color: #f8fbc5; }
  .p-product-search__menu li span { display: inline-block; position: relative; padding-right: 9px; padding-right: 14px; }
  .p-product-search__menu li span::after { position: absolute; content: ""; margin: auto; box-sizing: border-box; vertical-align: middle; top: 0; bottom: 0; right: 0; transform: translate(0px, 0.25px) rotate(45deg); transform-origin: top right; border-bottom: 2px solid rgba(255, 255, 255, 0.6); border-right: 2px solid rgba(255, 255, 255, 0.6); width: 7px; height: 7px; transition-property: top, right, bottom, left; transition-duration: 0.3s; }
  .p-product-search__menu li span::after { top: 6px; }
  .p-product-search__menu li[aria-expanded="true"] span::after { border-color: #f8fbc5; }
  .p-product-search__menu-category { min-width: 9em; }
  .p-product-search__menu-item { min-width: 8em; }
  .p-product-search__menu-field { min-width: 8em; }
  .p-product-search__menu-hach { min-width: 6em; } }

@media print, screen and (min-width: 1201px) { .p-product-search__main { margin-right: 50px; margin-left: 50px; } }

@media print, screen and (max-width: 1000px) { .p-product-search__menu { font-size: 1.2rem; } }

@media screen and (max-width: 1000px) and (max-width: 768px) { .p-product-search__menu { font-size: 1.08rem; } }

@media print, screen and (max-width: 1000px) { .p-product-search__menu > *:not(:last-child) { margin-right: 1.1rem; } }

@media screen and (max-width: 768px) { .p-product-search__menu { display: flex; justify-content: space-between; flex-wrap: wrap; cursor: pointer; font-size: 0.9rem; margin-bottom: 0.75rem; } }

@media screen and (max-width: 768px) and (max-width: 768px) { .p-product-search__menu { font-size: 0.81rem; } }

@media screen and (max-width: 768px) { .p-product-search__menu li { width: 48%; letter-spacing: 0; box-sizing: border-box; border: 1px solid rgba(255, 255, 255, 0.1); border-radius: 6px; line-height: 1.2; padding: 0.8em 0 0.4em; }
  .p-product-search__menu li.is-active { font-weight: bold; color: #f8fbc5; }
  .p-product-search__menu li span { display: inline-block; position: relative; padding-bottom: 5.5px; padding-bottom: 10px; }
  .p-product-search__menu li span::after { position: absolute; content: ""; margin: auto; box-sizing: border-box; vertical-align: middle; bottom: 0; left: 0; right: 0; transform: translate(3.5px, 0px) rotate(-45deg); transform-origin: bottom left; border-bottom: 1px solid rgba(255, 255, 255, 0.6); border-left: 1px solid rgba(255, 255, 255, 0.6); width: 7px; height: 7px; transition-property: top, right, bottom, left; transition-duration: 0.3s; }
  .p-product-search__menu li.is-active span::after { border-color: #f8fbc5; }
  .p-product-search__menu li:nth-child(1), .p-product-search__menu li:nth-child(2) { margin-bottom: 4%; } }

.p-product-search__block { display: none; background: rgba(255, 255, 255, 0.1); border-radius: 6px; padding: 1.5rem 3rem; text-align: left; }

@media print, screen and (max-width: 1000px) { .p-product-search__block { font-size: 90%; } }

/******************************************************************
project product-search__form
******************************************************************/
@media print, screen and (min-width: 769px) { .p-product-search__form-inner { background-color: #ffffff; border-radius: 60px; padding: 0.5rem 1rem; }
  .p-product-search__form .mf_finder_searchBox_items { padding: 0; }
  .p-product-search__form .mf_finder_searchBox_suggest_items { text-align: left; }
  .p-product-search__form .mf_finder_searchBox_suggest_item { padding-left: 0.4em; }
  .p-product-search__form input[type="text"] { font-size: 1.2rem; outline: 0; border: 0; } }

@media screen and (min-width: 769px) and (max-width: 768px) { .p-product-search__form input[type="text"] { font-size: 1.08rem; } }

@media print, screen and (min-width: 769px) { .p-product-search__form .mf_finder_searchBox_submit { display: block; width: 33px; height: 33px; background-color: transparent; border-radius: 0; padding: 0; transition-property: opacity; transition-duration: 0.3s; }
  .p-product-search__form .mf_finder_searchBox_submit::after { content: ''; display: inline-block; width: 23px; height: 23px; background-image: url(/common/images/re2_icon_search.png); background-size: contain; vertical-align: middle; }
  .p-product-search__form .mf_finder_searchBox_submit:hover { opacity: 0.6; }
  .p-product-search__form .mf_finder_searchBox_submit::before { display: none; }
  .p-product-search__form .mf_finder_searchBox_submit span { position: absolute; width: 0px; height: 0px; top: -999px; overflow: hidden; }
  .p-product-search__form-s-inner { border: 1px solid #a5a5a5; background-color: #ffffff; border-radius: 60px; padding: 0.25rem 0.5rem; }
  .p-product-search__form-s .mf_finder_searchBox_items { padding: 0; }
  .p-product-search__form-s .mf_finder_searchBox_suggest_items { text-align: left; }
  .p-product-search__form-s .mf_finder_searchBox_suggest_item { padding-left: 0.4em; }
  .p-product-search__form-s input[type="text"] { outline: 0; border: 0; }
  .p-product-search__form-s .mf_finder_searchBox_submit { display: block; width: 28px; height: 28px; background-color: transparent; border-radius: 0; padding: 0; transition-property: opacity; transition-duration: 0.3s; }
  .p-product-search__form-s .mf_finder_searchBox_submit::after { content: ''; display: inline-block; width: 18px; height: 18px; background-image: url(/common/images/re2_icon_search.png); background-size: contain; vertical-align: middle; }
  .p-product-search__form-s .mf_finder_searchBox_submit:hover { opacity: 0.6; }
  .p-product-search__form-s .mf_finder_searchBox_submit::before { display: none; }
  .p-product-search__form-s .mf_finder_searchBox_submit span { position: absolute; width: 0px; height: 0px; top: -999px; overflow: hidden; } }

@media print, screen and (min-width: 1201px) { .p-product-search__form-inner { margin-right: 50px; margin-left: 50px; } }

@media screen and (max-width: 768px) { .p-product-search__form-inner { background-color: #ffffff; border-radius: 60px; padding: 0.375rem 0.75rem; }
  .p-product-search__form .mf_finder_searchBox { margin: 0; }
  .p-product-search__form .mf_finder_searchBox_items { padding: 0; }
  .p-product-search__form .mf_finder_searchBox_suggest_items { text-align: left; }
  .p-product-search__form .mf_finder_searchBox_suggest_item { padding-left: 0.4em; }
  .p-product-search__form input[type="text"] { font-size: 1.2rem; outline: 0; border: 0; } }

@media screen and (max-width: 768px) and (max-width: 768px) { .p-product-search__form input[type="text"] { font-size: 1.08rem; } }

@media screen and (max-width: 768px) { .p-product-search__form .mf_finder_searchBox_submit { display: block; width: 33px; height: 33px; background-color: transparent; border-radius: 0; padding: 0; }
  .p-product-search__form .mf_finder_searchBox_submit::after { content: ''; display: inline-block; width: 20px; height: 20px; background-image: url(/common/images/re2_icon_search.png); background-size: contain; vertical-align: middle; }
  .p-product-search__form .mf_finder_searchBox_submit::before { display: none; }
  .p-product-search__form .mf_finder_searchBox_submit span { position: absolute; width: 0px; height: 0px; top: -999px; overflow: hidden; } }

/******************************************************************
project p-product-search__list
******************************************************************/
.p-product-search__list { text-align: left; }

@media print, screen and (min-width: 1201px) { .p-product-search__list { margin-left: 50px; margin-right: 50px; } }

.p-product-search__list-inner { display: flex; flex-wrap: wrap; margin-top: -30px; margin-right: -30px; font-size: 95%; }

.p-product-search__list-column { width: calc(33.33333% - 30px); margin-top: 30px; margin-right: 30px; }

.p-product-search__list-column > *:not(:last-child) { margin-bottom: 30px; }

.p-product-search__list-title { font-size: 22px; margin-bottom: 6px; }

.p-product-search__list-item a { color: #fff; position: relative; padding-left: 5.5px; padding-left: 15px; }

.p-product-search__list-item a::after { position: absolute; content: ""; margin: auto; box-sizing: border-box; vertical-align: middle; top: 0; left: 0; transform: translate(5.5px, 0.8em) rotate(135deg); transform-origin: top left; border-top: 1px solid #fff; border-left: 1px solid #fff; width: 7px; height: 7px; transition-property: top, right, bottom, left; transition-duration: 0.3s; }

/******************************************************************
project - product-search-mega
******************************************************************/
.p-product-search-mega { background: #0e65ad url(/common/images/re2_bg_product.png) top center/cover no-repeat; color: #ffffff; padding: 1.5rem; }

@media print, screen and (max-width: 1200px) { .p-product-search-mega__link { font-size: 1.2vw; } }

.p-product-search-mega__link a { position: absolute; position: relative; padding-right: 5.5px; padding-right: 10px; }

.p-product-search-mega__link a::after { position: absolute; content: ""; margin: auto; box-sizing: border-box; vertical-align: middle; top: 0; bottom: 0; right: 0; transform: translate(0px, 2.5px) rotate(45deg); transform-origin: top right; border-top: 1px solid #ffffff; border-right: 1px solid #ffffff; width: 7px; height: 7px; transition-property: top, right, bottom, left; transition-duration: 0.3s; }

.p-product-search-mega__link a:hover { color: #f8fbc5; }

.p-product-search-title { text-align: center; font-size: 1.2rem; }

@media screen and (max-width: 768px) { .p-product-search-title { font-size: 1.08rem; } }

.p-product-search-title2 { text-align: center; font-size: 1.2rem; color: #0164ac; }

@media screen and (max-width: 768px) { .p-product-search-title2 { font-size: 1.08rem; } }

/******************************************************************
project - product-index
******************************************************************/
/******************************************************************
project - product-list
******************************************************************/
[data-search-parent] { display: none; }

.p-product-list__cattitle { font-weight: bold; color: #919191; }

.p-product-list__name { font-size: 1.8rem; }

@media screen and (max-width: 768px) { .p-product-list__name { font-size: 1.62rem; } }

.p-product-list__model { font-weight: bold; font-size: 1.2rem; }

@media screen and (max-width: 768px) { .p-product-list__model { font-size: 1.08rem; } }

.p-product-list__detail { order: 3; }

.p-product-list__detail a { display: block; padding: 1rem; text-align: center; border-top: 1px solid #d8d8d8; font-weight: bold; transition-property: background; transition-duration: 0.3s; }

@media screen and (max-width: 768px) { .p-product-list__detail a { padding: 0.75rem; } }

.p-product-list__detail a:hover { background-color: #f2f9fa; text-decoration: none; }

.p-product-list__detail a span { position: relative; padding-right: 6.5px; padding-right: 0.75em; }

.p-product-list__detail a span::after { position: absolute; content: ""; margin: auto; box-sizing: border-box; vertical-align: middle; top: 0; bottom: 0; right: 0; transform: translate(0px, 2.5px) rotate(45deg); transform-origin: top right; border-top: 2px solid #10afba; border-right: 2px solid #10afba; width: 7px; height: 7px; transition-property: top, right, bottom, left; transition-duration: 0.3s; }

@media print, screen and (min-width: 769px) { .p-product-list__image img { max-width: 200px; } }

/******************************************************************
project - product-list-select
******************************************************************/
.p-product-list-select { display: block; width: 100%; position: relative; box-sizing: border-box; background-color: #ffffff; border-radius: 3em; border: 1px solid #d8d8d8; }

.p-product-list-select::before { content: ""; position: absolute; margin: auto; top: 0; bottom: 0.3em; right: 1.2em; width: 5px; height: 5px; border-top: 2px solid #10afba; border-right: 2px solid #10afba; transform: rotate(135deg); }

.p-product-list-select select { box-sizing: border-box; width: 100%; vertical-align: middle; padding: 0.5em 2.3em 0.5em 1.5em; border: 0; transition: border-color .15s ease-in-out,box-shadow .15s ease-in-out; background: transparent; position: relative; z-index: +1; -moz-appearance: none; -webkit-appearance: none; appearance: none; color: #0164ac; text-align: center; font-weight: bold; }

.p-product-list-select select::-ms-expand { display: none; }

/******************************************************************
project - product-list2
******************************************************************/
.p-product-list2__item { display: flex; padding: 0; }

.p-product-list2__item a { flex-grow: 1; padding: 1rem; color: #404040; }

.p-product-list2__item a:hover { text-decoration: none; }

.p-product-list2__head { width: 26%; }

@media screen and (max-width: 768px) { .p-product-list2__head { width: 22%; max-width: 80px !important; } }

.p-product-list2__body { line-height: 1.2; }

.p-product-list2__body > *:not(:last-child) { margin-bottom: 5px; }

.p-product-list2__body .c-badge { font-size: 12px; padding: 0.2em 0.5em 0.2em; }

.p-product-list2__cattitle { color: #919191; font-size: 0.9rem; }

@media screen and (max-width: 768px) { .p-product-list2__cattitle { font-size: 0.81rem; } }

.p-product-list2__name { font-size: 1.1rem; line-height: 1.2; }

@media screen and (max-width: 768px) { .p-product-list2__name { font-size: 0.99rem; } }

.p-product-list2__model { font-weight: bold; font-size: 0.9rem; }

@media screen and (max-width: 768px) { .p-product-list2__model { font-size: 0.81rem; } }

.p-product-list2__features { color: red; font-size: 12px; }

.p-product-list2__copy { font-size: 0.9rem; }

@media screen and (max-width: 768px) { .p-product-list2__copy { font-size: 0.81rem; } }

/******************************************************************
project - product-detail
******************************************************************/
.p-product-detail__img { border: 1px solid #d8d8d8; text-align: center; }

.p-product-detail__cattitle { font-weight: bold; color: #919191; }

.p-product-detail__name { font-size: 2rem; }

@media screen and (max-width: 768px) { .p-product-detail__name { font-size: 1.8rem; } }

.p-product-detail__model { font-weight: bold; font-size: 1.2rem; }

@media screen and (max-width: 768px) { .p-product-detail__model { font-size: 1.08rem; } }

.p-product-detail__price { font-weight: bold; font-size: 1.5rem; }

@media screen and (max-width: 768px) { .p-product-detail__price { font-size: 1.35rem; } }

.p-product-detail__pdsupport { background-color: #e8f6f8; transition-property: background; transition-duration: 0.3s; border-radius: 6px; box-sizing: border-box; color: inherit; text-decoration: none; padding: 2rem 3rem; display: flex; align-items: center; justify-content: center; }

.p-product-detail__pdsupport:hover { background-color: #f0f9fa; }

.p-product-detail__pdsupport:hover { color: inherit; text-decoration: none; }

@media screen and (max-width: 768px) { .p-product-detail__pdsupport { padding: 1.125rem; display: block; } }

.p-product-detail__pdsupport h2 { color: #039bad; font-size: 1.2rem; width: 36%; background: url(/common/images/re2_icon_pdsupport_s.png) left center/56px auto no-repeat; padding: 20px 0 20px 70px; }

@media screen and (max-width: 768px) { .p-product-detail__pdsupport h2 { font-size: 1.08rem; } }

@media screen and (max-width: 768px) { .p-product-detail__pdsupport h2 { width: auto; background: url(/common/images/re2_icon_pdsupport_s.png) center top/46px auto no-repeat; padding: 43px 0 0 0; text-align: center; margin-bottom: 0.75rem; } }

.p-product-detail__pdsupport p { width: 50%; }

@media screen and (max-width: 768px) { .p-product-detail__pdsupport p { font-size: 1rem; width: auto; } }

@media screen and (max-width: 768px) and (max-width: 768px) { .p-product-detail__pdsupport p { font-size: 0.9rem; } }

/******************************************************************
project - product-icon
******************************************************************/
.p-product-icon-title { padding-top: 0.2em; }

.p-product-icon::after { content: ""; display: block; clear: both; }

.p-product-icon__item { float: left; margin-right: 0.5rem; margin-bottom: 0.5rem; }

@media screen and (max-width: 768px) { .p-product-icon__item { margin-right: 0.375rem; margin-bottom: 0.375rem; } }

/******************************************************************
project - support-search
******************************************************************/
.p-support-search { background: #e8f6f8; text-align: center; }

.p-support-search__title { font-size: 2.4rem; line-height: 1.4; color: #0164ac; }

@media screen and (max-width: 768px) { .p-support-search__title { font-size: 2.16rem; } }

@media screen and (max-width: 768px) { .p-support-search__title { font-size: 1.8rem; } }

@media screen and (max-width: 768px) and (max-width: 768px) { .p-support-search__title { font-size: 1.62rem; } }

.p-support-search__title span { display: block; font-size: 0.8rem; color: #404040; }

@media screen and (max-width: 768px) { .p-support-search__title span { font-size: 0.72rem; } }

/******************************************************************
project - support-icon
******************************************************************/
.p-support-icon { display: flex; justify-content: center; flex-wrap: wrap; letter-spacing: 0; }

.p-support-icon__item { width: 16%; line-height: 1.3; margin-left: 1.5%; margin-right: 1.5%; }

@media screen and (max-width: 768px) { .p-support-icon__item { width: 29%; } }

.p-support-icon__item a { display: block; position: relative; padding-top: 100%; box-sizing: border-box; border-radius: 100%; background-color: #fff; text-align: center; color: #039bad; transition-property: background; transition-duration: 0.3s; }

.p-support-icon__item a:hover { background-color: #f2f9fa; }

.p-support-icon__img img { padding-top: 12%; padding-bottom: 2%; max-width: 48%; }

.p-support-icon__text { display: block; }

@media screen and (max-width: 768px) { .p-support-icon__text { padding: 0 10%; } }

@media print, screen and (min-width: 1201px) { .p-support-icon { font-size: 0.95rem; } }

@media screen and (min-width: 1201px) and (max-width: 768px) { .p-support-icon { font-size: 0.855rem; } }

@media print, screen and (max-width: 1200px) { .p-support-icon { font-size: 1.3vw; } }

@media screen and (max-width: 768px) { .p-support-icon { font-size: 2.5vw; } }

/******************************************************************
project - support-icon-mega
******************************************************************/
.p-support-icon-mega { display: flex; justify-content: center; flex-wrap: wrap; letter-spacing: 0; }

.p-support-icon-mega__item { width: 17%; line-height: 1.3; margin-left: 1.5%; margin-right: 1.5%; }

.p-support-icon-mega__item a { display: block; position: relative; padding-top: 100%; box-sizing: border-box; border-radius: 100%; background-color: #f2f9fa; text-align: center; color: #039bad; transition-property: background; transition-duration: 0.3s; }

.p-support-icon-mega__item a:hover { background-color: #e7f4f6; }

.p-support-icon-mega__img img { padding-top: 12%; padding-bottom: 2%; max-width: 48%; }

.p-support-icon-mega__text { display: block; }

@media print, screen and (min-width: 1201px) { .p-support-icon-mega { font-size: 0.8rem; } }

@media screen and (min-width: 1201px) and (max-width: 768px) { .p-support-icon-mega { font-size: 0.72rem; } }

@media print, screen and (max-width: 1200px) { .p-support-icon-mega { font-size: 1.1vw; } }

/******************************************************************
project - wysiwyg
******************************************************************/
.wysiwyg > *:not(:last-child) { margin-bottom: 1rem; }

@media screen and (max-width: 768px) { .wysiwyg > *:not(:last-child) { margin-bottom: 0.75rem; } }

.wysiwyg li { margin-left: 1.2em; list-style: disc; }

.wysiwyg h2 { margin-top: 2rem; }

.wysiwyg h3 { margin-top: 2rem; }

/******************************************************************
project - book-list
******************************************************************/
@media print, screen and (min-width: 769px) { .p-book-list { display: flex; flex-wrap: wrap; margin-right: -2rem; margin-top: -2rem; } }

@media screen and (max-width: 768px) { .p-book-list > *:not(:last-child) { margin-bottom: 16px; } }

.p-book-list__item { box-sizing: border-box; border: 1px solid #d8d8d8; }

@media print, screen and (min-width: 769px) { .p-book-list__item { margin-right: 2rem; margin-top: 2rem; width: calc(33.33333% - 2rem); }
  .p-book-list__item--col1 { width: calc(100% - 2rem); }
  .p-book-list__item--col2 { width: calc(50% - 2rem); } }

.p-book-list__item > * { display: flex; text-decoration: none; color: inherit; }

.p-book-list__item > *:hover { text-decoration: none; }

@media print, screen and (min-width: 769px) { .p-book-list__item > * { transition-property: opacity; transition-duration: 0.3s; }
  .p-book-list__item > *:hover { opacity: 0.7; } }

.p-book-list__img { width: 150px; padding: 1rem 0 0 1rem; }

@media screen and (max-width: 768px) { .p-book-list__img { width: 30vw; } }

.p-book-list__main { box-sizing: border-box; padding: 1rem; width: calc(100% - 150px); }

.p-book-list__main > *:not(:last-child) { margin-bottom: 8px; }

@media screen and (max-width: 768px) { .p-book-list__main { width: calc(100% - 30vw); } }

.p-book-list__title { display: block; font-weight: bold; font-size: 22px; line-height: 1.3; }

@media screen and (max-width: 768px) { .p-book-list__title { font-size: 18px; } }

.p-book-list__note { font-size: 90%; display: block; color: #666; }

.p-book-list__text { font-size: 90%; display: block; }

/******************************************************************
project - result-search
******************************************************************/
.p-result-search .mf_finder_searchBox, .p-result-search .mf_finder_organic_header_wrapper { margin-left: 0; margin-right: 0; }

.p-result-search .mf_finder_organic_doc { padding-right: 0; padding-left: 0; }

.p-result-search .mf_finder_organic_doc_title_wrapper { color: #0164ac; }

.p-result-search .mf_finder_organic_doc_title_wrapper:visited { color: #780DAC; }

.p-result-search .mf_finder_organic_doc_title { font-size: 120%; font-weight: normal; }

.p-result-search .mf_finder_searchBox_submit { background-color: #0164ac; }

.p-result-search .mf_finder_organic_pager { margin-top: 1rem; }

.p-result-search .mf_finder_pager_items li a { border-radius: 6px; background-color: #EEEEEE; color: inherit; }

.p-result-search .mf_finder_pager_items li a:hover { color: #0164ac; }

.p-result-search li.mf_finder_pager_item_current { border-radius: 6px; background-color: #0164ac; color: #fff; }

.p-result-search li.mf_finder_pager_item_first a, .p-result-search li.mf_finder_pager_item_prev a, .p-result-search li.mf_finder_pager_item_next a { background-color: inherit; padding: 0 0.2em; }

.p-result-search li.mf_finder_pager_item_first a span, .p-result-search li.mf_finder_pager_item_prev a span, .p-result-search li.mf_finder_pager_item_next a span { font-size: 130%; }

/******************************************************************
project - company-index
******************************************************************/
@media print, screen and (min-width: 769px) { .p-company-index-message { position: relative; z-index: +1; transform: translateY(6%); margin-top: 4%; }
  .p-company-index-message > div { display: flex; }
  .p-company-index-message__main { width: 50%; position: relative; box-sizing: border-box; padding: 3% 0 4% 3%; }
  .p-company-index-message__main::before { position: absolute; content: ""; margin: auto; box-sizing: border-box; vertical-align: middle; top: 0; bottom: 0; left: -80%; width: 1000%; height: 100%; background: #00a9c7; }
  .p-company-index-message__main::after { position: absolute; content: ""; margin: auto; box-sizing: border-box; vertical-align: middle; top: 0; bottom: 0; left: -20%; width: 150%; height: 100%; background: linear-gradient(115deg, #00a9c7 18%, #66cf70 100%); }
  .p-company-index-message__main-inner { position: relative; z-index: +1; top: 50%; color: #fff; }
  .p-company-index-message__main-inner2 { transform: translateY(-50%); }
  .p-company-index-message__img { position: relative; z-index: +1; width: 50%; transform: translateY(-10%); }
  .p-company-index-message__title { margin-bottom: 2%; font-size: 3.2vw; line-height: 1.4; }
  .p-company-index-message__text { margin-bottom: 5%; }
  .p-company-index-message__name { margin-bottom: 5%; } }

@media print, screen and (min-width: 1201px) { .p-company-index-message__title { font-size: 2.3rem; } }

@media screen and (min-width: 1201px) and (max-width: 768px) { .p-company-index-message__title { font-size: 2.07rem; } }

@media screen and (max-width: 768px) { .p-company-index-message__main { position: relative; background: linear-gradient(135deg, #00a9c7 18%, #66cf70 100%); text-align: center; }
  .p-company-index-message__main-inner { padding: 8%; color: #fff; }
  .p-company-index-message__img { text-align: center; }
  .p-company-index-message__title { margin-bottom: 5%; font-size: 5.2vw; line-height: 1.4; }
  .p-company-index-message__text { margin-bottom: 5%; }
  .p-company-index-message__name { margin-bottom: 5%; } }

.p-company-index-list { background-color: #e8f6f8; }

/******************************************************************
project - company-history
******************************************************************/
.p-company-history { background: url(/company/profile/images/history_bg1.png) top center/100% auto; padding: 3rem; }

@media print, screen and (max-width: 1200px) { .p-company-history { padding: 3vw; } }

@media screen and (max-width: 768px) { .p-company-history { padding: 1.125rem 1.125rem; } }

@media print, screen and (min-width: 769px) { .p-company-history__block { position: relative; display: table; width: 100%; padding-top: 1.5rem; padding-bottom: 1.5rem; }
  .p-company-history__block::after { position: absolute; content: ""; margin: auto; box-sizing: border-box; vertical-align: middle; top: 0; bottom: 0; left: 20%; width: 1px; height: 100%; background-color: #b79c6a; }
  .p-company-history__title { width: 20%; box-sizing: border-box; display: table-cell; vertical-align: top; line-height: 1.1; font-weight: normal; text-align: right; }
  .p-company-history__year { position: relative; display: block; color: #b79c6a; padding-right: 1.5rem; font-size: 54px; } }

@media print, screen and (min-width: 769px) and (max-width: 1200px) { .p-company-history__year { font-size: 4.3vw; } }

@media print, screen and (min-width: 769px) { .p-company-history__year::after { position: absolute; content: ""; margin: auto; box-sizing: border-box; vertical-align: middle; top: 0; right: -5px; bottom: 0; width: 9px; height: 9px; font-size: 9px; content: "●"; }
  .p-company-history__era { display: inline-block; border: 1px solid #64502e; color: #64502e; font-size: 16px; padding: 0.2em; margin-right: 1.5rem; } }

@media print, screen and (min-width: 769px) and (max-width: 1000px) { .p-company-history__era { font-size: 1.8vw; } }

@media print, screen and (min-width: 769px) { .p-company-history__main { width: 80%; box-sizing: border-box; display: table-cell; vertical-align: top; padding-left: 1.5rem; color: #64502e; padding-top: 15px; font-size: 18px; }
  .p-company-history__main--bold { padding-top: 8px; }
  .p-company-history__main > *:not(:last-child) { border-bottom: 1px dotted #d1bd97; padding-bottom: 15px; margin-bottom: 15px; }
  .p-company-history__bold { font-size: 26px; color: #d75a0f; }
  .p-company-history__imgset::after { content: ""; display: block; clear: both; }
  .p-company-history__imgset-text { overflow: hidden; display: block; }
  .p-company-history__imgset-img { float: right; margin-left: 15px; } }

@media screen and (max-width: 768px) { .p-company-history__block { position: relative; padding-bottom: 0.75rem; }
  .p-company-history__block:not(:last-child) { border-bottom: 1px solid #d1bd97; padding-bottom: 15px; margin-bottom: 15px; }
  .p-company-history__title { box-sizing: border-box; line-height: 1.1; font-weight: normal; }
  .p-company-history__year { color: #b79c6a; padding-right: 0.75rem; font-size: 36px; }
  .p-company-history__era { display: inline-block; border: 1px solid #64502e; color: #64502e; font-size: 14px; padding: 0.3em; vertical-align: 5px; }
  .p-company-history__main { box-sizing: border-box; vertical-align: top; padding-top: 15px; color: #64502e; }
  .p-company-history__main > *:not(:last-child) { border-bottom: 1px dotted #d1bd97; padding-bottom: 10px; margin-bottom: 10px; }
  .p-company-history__bold { font-size: 20px; color: #d75a0f; }
  .p-company-history__imgset { display: flex; flex-direction: column; }
  .p-company-history__imgset-text { order: 1; padding-bottom: 10px; }
  .p-company-history__imgset-img { order: 2; text-align: center; } }

/******************************************************************
project - company-management
******************************************************************/
.p-company-management__title { text-align: center; font-size: 25px; font-family: serif; font-weight: 500; letter-spacing: 3px; line-height: 1.8; }

.p-company-management__title span { color: #1d4d9f; }

@media print, screen and (max-width: 1000px) { .p-company-management__title { font-size: 2.4vw; } }

@media screen and (max-width: 768px) { .p-company-management__title { letter-spacing: 2px; font-size: 18px; } }

.p-company-management__block { text-align: center; }

.p-company-management__block-inner { display: inline-block; text-align: left; }

.p-company-management__subtitle { color: #1d4d9f; font-size: 24px; text-align: center; }

.p-company-management__subtitle-inner { display: inline-block; border-bottom: 1px solid #1d4d9f; }

.p-company-management .c-list-notes { width: auto; display: inline-table; color: #1d4d9f; font-size: 18px; }

@media screen and (max-width: 768px) { .p-company-management .c-list-notes { font-size: 16px; } }

.p-company-management .c-list-notes__row { display: block; }

/******************************************************************
project - company-charter
******************************************************************/
.p-company-charter { border: 1px solid #1d4d9f; padding: 3rem; }

@media screen and (max-width: 768px) { .p-company-charter { padding: 1.5rem; } }

.p-company-charter__title { text-align: center; font-size: 42px; font-weight: 500; color: #003590; letter-spacing: 3px; }

.p-company-charter__title img { margin-bottom: 10px; }

@media screen and (max-width: 768px) { .p-company-charter__title img { max-width: 60%; } }

@media screen and (max-width: 768px) { .p-company-charter__title { font-size: 26px; } }

.p-company-charter__copy { text-align: center; font-size: 18px; text-align: center; color: #003590; }

@media print, screen and (max-width: 1000px) { .p-company-charter__copy { font-size: 1.8vw; } }

@media screen and (max-width: 768px) { .p-company-charter__copy { font-size: 16px; } }

.p-company-charter__list { color: #003590; }

.p-company-charter__list .c-list-order__item:not(:last-child) { margin-bottom: 0.6em; }

/******************************************************************
project - company-vision
******************************************************************/
.p-company-vision__title { text-align: center; font-size: 32px; font-weight: 500; letter-spacing: 3px; line-height: 1.8; }

.p-company-vision__title span { color: #1d4d9f; }

@media print, screen and (max-width: 1000px) { .p-company-vision__title { font-size: 3vw; } }

@media screen and (max-width: 768px) { .p-company-vision__title { font-size: 22px; } }

/******************************************************************
project - company-managementplan
******************************************************************/
.p-company-managementplan-point3 { margin-bottom: 0.5rem; }

@media screen and (max-width: 768px) { .p-company-managementplan-point3 { margin-bottom: 0.375rem; } }

.p-company-managementplan-point3__title { background-color: #eef9ff; }

.p-company-managementplan-title { color: #2db69e; font-weight: bold; text-align: center; font-size: 1.5rem; margin-bottom: 1.5rem; }

@media screen and (max-width: 768px) { .p-company-managementplan-title { font-size: 1.35rem; } }

@media screen and (max-width: 768px) { .p-company-managementplan-title { margin-bottom: 1.125rem; } }

.p-company-managementplan-target { margin-bottom: 1.5rem; }

@media screen and (max-width: 768px) { .p-company-managementplan-target { margin-bottom: 1.125rem; } }

.p-company-managementplan-target__domestic { position: relative; margin-top: 40px; padding-top: 35px; background-color: #f5fdfe; border-color: #00a9c7; }

.p-company-managementplan-target__domestic-mark > span { transform: translateY(-50%); width: 80px; height: 80px; border-radius: 100%; text-align: center; line-height: 1.2; color: #ffffff; left: 0; right: 0; margin: 0 auto; background-color: #00a9c7; font-weight: bold; }

.p-company-managementplan-target__domestic-title { text-align: center; color: #00a9c7; font-size: 1.2rem; line-height: 1.4; margin-bottom: 0.5em !important; }

@media screen and (max-width: 768px) { .p-company-managementplan-target__domestic-title { font-size: 1.08rem; } }

.p-company-managementplan-target__overseas { position: relative; margin-top: 40px; padding-top: 35px; background-color: #f2fdfb; border-color: #2db69e; }

.p-company-managementplan-target__overseas-mark > span { transform: translateY(-50%); width: 80px; height: 80px; border-radius: 100%; text-align: center; line-height: 1.2; color: #ffffff; left: 0; right: 0; margin: 0 auto; background-color: #2db69e; font-weight: bold; }

.p-company-managementplan-target__overseas-title { text-align: center; color: #2db69e; font-size: 1.2rem; line-height: 1.4; margin-bottom: 0.5em !important; }

@media screen and (max-width: 768px) { .p-company-managementplan-target__overseas-title { font-size: 1.08rem; } }

.p-company-managementplan-target__bottom { background-color: #eef9ff; }

.p-company-managementplan-target__bottom-title { font-size: 1rem; line-height: 1.4; margin-bottom: 0.5em !important; }

@media screen and (max-width: 768px) { .p-company-managementplan-target__bottom-title { font-size: 0.9rem; } }

.map .html { position: relative; padding-top: 56.25%; }

.map .html > iframe { position: absolute; top: 0; left: 0; width: 100%; height: 100%; border: 0; }

/******************************************************************
project - ir-index
******************************************************************/
.p-ir-index-individual { background-color: #fffef6; }

.p-ir-index-individual__inner { padding: 70px 0 70px 140px; box-sizing: border-box; background-position: right 22% bottom; background-repeat: no-repeat; background-size: 35%; }

@media print, screen and (max-width: 1200px) { .p-ir-index-individual__inner { padding: 6vw 0 6vw 10vw; background-position: right 10vw bottom; } }

@media print, screen and (max-width: 1000px) { .p-ir-index-individual__inner { padding: 6vw 0 6vw 10vw; background-position: right 5vw bottom; } }

.p-ir-index-individual h1 { font-size: 250%; color: #0da7aa; font-weight: bold; }

.p-ir-index-individual h1 span { font-size: 80%; }

.p-ir-index-individual__copy { font-size: 110%; }

@media screen and (max-width: 768px) { .p-ir-index-individual__inner { padding: 8vw 0 0 0; background-position: center bottom; background-size: 60% auto; }
  .p-ir-index-individual h1 { font-size: 140%; text-align: center; margin-bottom: 5px; }
  .p-ir-index-individual__block { text-align: center; padding: 0 15px 45vw 15px; }
  .p-ir-index-individual__copy { font-size: 100%; line-height: 1.5; } }

.p-ir-index-list { background-color: #e8f6f8; }

/******************************************************************
utility - mediaQuery
******************************************************************/
.u-sp-media { display: none; }

@media screen and (max-width: 768px) { .u-pc-media { display: none; }
  .u-sp-media { display: block; }
  img.u-sp-media { display: inline-block; } }

/******************************************************************
utility - display
******************************************************************/
.u-block { display: block; }

.u-none { display: none; }

.u-inline { display: inline; }

.u-inline-block { display: inline-block; }

.u-table { display: table; }

.u-table-row { display: table-row; }

.u-table-cell { display: table-cell; }

.u-flex { display: flex; }

.u-inline-flex { display: inline-flex; }

@media screen and (max-width: 768px) { .u-sp-block { display: block; }
  .u-sp-none { display: none; }
  .u-sp-inline { display: inline; }
  .u-sp-inline-block { display: inline-block; }
  .u-sp-table { display: table; }
  .u-sp-table-row { display: table-row; }
  .u-sp-table-cell { display: table-cell; }
  .u-sp-flex { display: flex; }
  .u-sp-inline-flex { display: inline-flex; } }

/******************************************************************
utility - display-off
******************************************************************/
.u-display-off { position: absolute; width: 0px; height: 0px; top: -999px; overflow: hidden; }

@media screen and (max-width: 768px) { .u-sp-display-off { position: absolute; width: 0px; height: 0px; top: -999px; overflow: hidden; } }

/******************************************************************
utility - padding
******************************************************************/
.u-padding { padding: 1rem; }

.u-padding-0 { padding: 0rem; }

.u-padding-l { padding: 1.25rem; }

.u-padding-2x { padding: 2rem; }

@media screen and (max-width: 768px) { .u-padding { padding: 0.75rem; }
  .u-padding-0 { padding: 0rem; }
  .u-padding-l { padding: 0.9375rem; }
  .u-padding-2x { padding: 1.5rem; }
  .u-sp-padding { padding: 0.75rem; }
  .u-sp-padding-0 { padding: 0rem; }
  .u-sp-padding-l { padding: 0.9375rem; }
  .u-sp-padding-2x { padding: 1.5rem; } }

/******************************************************************
utility - padding-top
******************************************************************/
.u-padding-top { padding-top: 1rem; }

.u-padding-top-0 { padding-top: 0rem; }

.u-padding-top-l { padding-top: 1.25rem; }

.u-padding-top-2x { padding-top: 2rem; }

@media screen and (max-width: 768px) { .u-padding-top { padding-top: 0.75rem; }
  .u-padding-top-0 { padding-top: 0rem; }
  .u-padding-top-l { padding-top: 0.9375rem; }
  .u-padding-top-2x { padding-top: 1.5rem; }
  .u-sp-padding-top { padding-top: 0.75rem; }
  .u-sp-padding-top-0 { padding-top: 0rem; }
  .u-sp-padding-top-l { padding-top: 0.9375rem; }
  .u-sp-padding-top-2x { padding-top: 1.5rem; } }

/******************************************************************
utility - padding-right
******************************************************************/
.u-padding-right { padding-right: 1rem; }

.u-padding-right-0 { padding-right: 0rem; }

.u-padding-right-l { padding-right: 1.25rem; }

.u-padding-right-2x { padding-right: 2rem; }

@media screen and (max-width: 768px) { .u-padding-right { padding-right: 0.75rem; }
  .u-padding-right-0 { padding-right: 0rem; }
  .u-padding-right-l { padding-right: 0.9375rem; }
  .u-padding-right-2x { padding-right: 1.5rem; }
  .u-sp-padding-right { padding-right: 0.75rem; }
  .u-sp-padding-right-0 { padding-right: 0rem; }
  .u-sp-padding-right-l { padding-right: 0.9375rem; }
  .u-sp-padding-right-2x { padding-right: 1.5rem; } }

/******************************************************************
utility - margin-vertical
******************************************************************/
.u-margin-vertical { margin-top: 1rem; margin-bottom: 1rem; }

.u-margin-vertical-3s { margin-top: 0.25rem; margin-bottom: 0.25rem; }

.u-margin-vertical-2s { margin-top: 0.5rem; margin-bottom: 0.5rem; }

.u-margin-vertical-2x { margin-top: 2rem; margin-bottom: 2rem; }

@media screen and (max-width: 768px) { .u-margin-vertical { margin-top: 0.75rem; margin-bottom: 0.75rem; }
  .u-margin-vertical-3s { margin-top: 0.1875rem; margin-bottom: 0.1875rem; }
  .u-margin-vertical-2s { margin-top: 0.375rem; margin-bottom: 0.375rem; }
  .u-margin-vertical-2x { margin-top: 1.5rem; margin-bottom: 1.5rem; }
  .u-sp-margin-vertical { margin-top: 0.75rem; margin-bottom: 0.75rem; }
  .u-sp-margin-vertical-3s { margin-top: 0.1875rem; margin-bottom: 0.1875rem; }
  .u-sp-margin-vertical-2s { margin-top: 0.375rem; margin-bottom: 0.375rem; }
  .u-sp-margin-vertical-2x { margin-top: 1.5rem; margin-bottom: 1.5rem; } }

/******************************************************************
utility - margin-top
******************************************************************/
.u-margin-top { margin-top: 1rem; }

.u-margin-top-3s { margin-top: 0.25rem; }

.u-margin-top-2s { margin-top: 0.5rem; }

.u-margin-top-2x { margin-top: 2rem; }

@media screen and (max-width: 768px) { .u-margin-top { margin-top: 0.75rem; }
  .u-margin-top-3s { margin-top: 0.1875rem; }
  .u-margin-top-2s { margin-top: 0.375rem; }
  .u-margin-top-2x { margin-top: 1.5rem; }
  .u-sp-margin-top { margin-top: 0.75rem; }
  .u-sp-margin-top-3s { margin-top: 0.1875rem; }
  .u-sp-margin-top-2s { margin-top: 0.375rem; }
  .u-sp-margin-top-2x { margin-top: 1.5rem; } }

/******************************************************************
utility - margin-bottom
******************************************************************/
.u-margin-bottom { margin-bottom: 1rem; }

.u-margin-bottom-3s { margin-bottom: 0.25rem; }

.u-margin-bottom-2s { margin-bottom: 0.5rem; }

.u-margin-bottom-2x { margin-bottom: 2rem; }

@media screen and (max-width: 768px) { .u-margin-bottom { margin-bottom: 0.75rem; }
  .u-margin-bottom-3s { margin-bottom: 0.1875rem; }
  .u-margin-bottom-2s { margin-bottom: 0.375rem; }
  .u-margin-bottom-2x { margin-bottom: 1.5rem; }
  .u-sp-margin-bottom { margin-bottom: 0.75rem; }
  .u-sp-margin-bottom-3s { margin-bottom: 0.1875rem; }
  .u-sp-margin-bottom-2s { margin-bottom: 0.375rem; }
  .u-sp-margin-bottom-2x { margin-bottom: 1.5rem; } }

/******************************************************************
utility - margin-left
******************************************************************/
.u-margin-left { margin-left: 1rem; }

.u-margin-left-3s { margin-left: 0.25rem; }

.u-margin-left-2s { margin-left: 0.5rem; }

.u-margin-left-2x { margin-left: 2rem; }

@media screen and (max-width: 768px) { .u-margin-left { margin-left: 0.75rem; }
  .u-margin-left-3s { margin-left: 0.1875rem; }
  .u-margin-left-2s { margin-left: 0.375rem; }
  .u-margin-left-2x { margin-left: 1.5rem; }
  .u-sp-margin-left { margin-left: 0.75rem; }
  .u-sp-margin-left-3s { margin-left: 0.1875rem; }
  .u-sp-margin-left-2s { margin-left: 0.375rem; }
  .u-sp-margin-left-2x { margin-left: 1.5rem; } }

/******************************************************************
utility - text-align
******************************************************************/
.u-center { text-align: center; }

.u-right { text-align: right; }

.u-left { text-align: left; }

@media screen and (max-width: 768px) { .u-sp-center { text-align: center; }
  .u-sp-right { text-align: right; }
  .u-sp-left { text-align: left; } }

/******************************************************************
utility - font-size-percent
******************************************************************/
.u-font-size50per { font-size: 50%; }

.u-font-size55per { font-size: 55%; }

.u-font-size60per { font-size: 60%; }

.u-font-size65per { font-size: 65%; }

.u-font-size70per { font-size: 70%; }

.u-font-size75per { font-size: 75%; }

.u-font-size80per { font-size: 80%; }

.u-font-size85per { font-size: 85%; }

.u-font-size90per { font-size: 90%; }

.u-font-size95per { font-size: 95%; }

.u-font-size100per { font-size: 100%; }

.u-font-size110per { font-size: 110%; }

.u-font-size120per { font-size: 120%; }

.u-font-size130per { font-size: 130%; }

.u-font-size140per { font-size: 140%; }

.u-font-size150per { font-size: 150%; }

.u-font-size160per { font-size: 160%; }

.u-font-size170per { font-size: 170%; }

.u-font-size180per { font-size: 180%; }

.u-font-size190per { font-size: 190%; }

.u-font-size200per { font-size: 200%; }

.u-font-size210per { font-size: 210%; }

.u-font-size220per { font-size: 220%; }

.u-font-size230per { font-size: 230%; }

.u-font-size240per { font-size: 240%; }

.u-font-size250per { font-size: 250%; }

.u-font-size260per { font-size: 260%; }

.u-font-size270per { font-size: 270%; }

.u-font-size280per { font-size: 280%; }

.u-font-size290per { font-size: 290%; }

.u-font-size300per { font-size: 300%; }

@media screen and (max-width: 768px) { .u-sp-font-size50per { font-size: 50%; }
  .u-sp-font-size55per { font-size: 55%; }
  .u-sp-font-size60per { font-size: 60%; }
  .u-sp-font-size65per { font-size: 65%; }
  .u-sp-font-size70per { font-size: 70%; }
  .u-sp-font-size75per { font-size: 75%; }
  .u-sp-font-size80per { font-size: 80%; }
  .u-sp-font-size85per { font-size: 85%; }
  .u-sp-font-size90per { font-size: 90%; }
  .u-sp-font-size95per { font-size: 95%; }
  .u-sp-font-size100per { font-size: 100%; }
  .u-sp-font-size110per { font-size: 110%; }
  .u-sp-font-size120per { font-size: 120%; }
  .u-sp-font-size130per { font-size: 130%; }
  .u-sp-font-size140per { font-size: 140%; }
  .u-sp-font-size150per { font-size: 150%; }
  .u-sp-font-size160per { font-size: 160%; }
  .u-sp-font-size170per { font-size: 170%; }
  .u-sp-font-size180per { font-size: 180%; }
  .u-sp-font-size190per { font-size: 190%; }
  .u-sp-font-size200per { font-size: 200%; }
  .u-sp-font-size210per { font-size: 210%; }
  .u-sp-font-size220per { font-size: 220%; }
  .u-sp-font-size230per { font-size: 230%; }
  .u-sp-font-size240per { font-size: 240%; }
  .u-sp-font-size250per { font-size: 250%; }
  .u-sp-font-size260per { font-size: 260%; }
  .u-sp-font-size270per { font-size: 270%; }
  .u-sp-font-size280per { font-size: 280%; }
  .u-sp-font-size290per { font-size: 290%; }
  .u-sp-font-size300per { font-size: 300%; } }

/******************************************************************
utility - font-weight
******************************************************************/
.u-font-normal { font-weight: normal; }

.u-font-bold { font-weight: bold; }

@media screen and (max-width: 768px) { .u-sp-font-normal { font-weight: normal; }
  .u-sp-font-bold { font-weight: bold; } }

/******************************************************************
utility - margin-auto
******************************************************************/
.u-margin-auto { margin: auto; }

.u-margin-top-auto { margin-top: auto; }

.u-margin-right-auto { margin-right: auto; }

.u-margin-left-auto { margin-left: auto; }

.u-margin-bottom-auto { margin-bottom: auto; }

.u-margin-side-auto { margin-right: auto; margin-left: auto; }

.u-margin-vertical-auto { margin-top: auto; margin-bottom: auto; }

@media screen and (max-width: 768px) { .u-sp-margin-auto { margin: auto; }
  .u-sp-margin-top-auto { margin-top: auto; }
  .u-sp-margin-right-auto { margin-right: auto; }
  .u-sp-margin-left-auto { margin-left: auto; }
  .u-sp-margin-bottom-auto { margin-bottom: auto; }
  .u-sp-margin-side-auto { margin-right: auto; margin-left: auto; }
  .u-sp-margin-vertical-auto { margin-top: auto; margin-bottom: auto; } }

/******************************************************************
utility - width-percent
******************************************************************/
.u-width0 { width: 0; }

.u-width1per { width: 1%; }

.u-width2per { width: 2%; }

.u-width3per { width: 3%; }

.u-width4per { width: 4%; }

.u-width5per { width: 5%; }

.u-width6per { width: 6%; }

.u-width7per { width: 7%; }

.u-width8per { width: 8%; }

.u-width9per { width: 9%; }

.u-width10per { width: 10%; }

.u-width11per { width: 11%; }

.u-width12per { width: 12%; }

.u-width13per { width: 13%; }

.u-width14per { width: 14%; }

.u-width15per { width: 15%; }

.u-width16per { width: 16%; }

.u-width17per { width: 17%; }

.u-width18per { width: 18%; }

.u-width19per { width: 19%; }

.u-width20per { width: 20%; }

.u-width21per { width: 21%; }

.u-width22per { width: 22%; }

.u-width23per { width: 23%; }

.u-width24per { width: 24%; }

.u-width25per { width: 25%; }

.u-width26per { width: 26%; }

.u-width27per { width: 27%; }

.u-width28per { width: 28%; }

.u-width29per { width: 29%; }

.u-width30per { width: 30%; }

.u-width31per { width: 31%; }

.u-width32per { width: 32%; }

.u-width33per { width: 33%; }

.u-width34per { width: 34%; }

.u-width35per { width: 35%; }

.u-width36per { width: 36%; }

.u-width37per { width: 37%; }

.u-width38per { width: 38%; }

.u-width39per { width: 39%; }

.u-width40per { width: 40%; }

.u-width41per { width: 41%; }

.u-width42per { width: 42%; }

.u-width43per { width: 43%; }

.u-width44per { width: 44%; }

.u-width45per { width: 45%; }

.u-width46per { width: 46%; }

.u-width47per { width: 47%; }

.u-width48per { width: 48%; }

.u-width49per { width: 49%; }

.u-width50per { width: 50%; }

.u-width51per { width: 51%; }

.u-width52per { width: 52%; }

.u-width53per { width: 53%; }

.u-width54per { width: 54%; }

.u-width55per { width: 55%; }

.u-width56per { width: 56%; }

.u-width57per { width: 57%; }

.u-width58per { width: 58%; }

.u-width59per { width: 59%; }

.u-width60per { width: 60%; }

.u-width61per { width: 61%; }

.u-width62per { width: 62%; }

.u-width63per { width: 63%; }

.u-width64per { width: 64%; }

.u-width65per { width: 65%; }

.u-width66per { width: 66%; }

.u-width67per { width: 67%; }

.u-width68per { width: 68%; }

.u-width69per { width: 69%; }

.u-width70per { width: 70%; }

.u-width71per { width: 71%; }

.u-width72per { width: 72%; }

.u-width73per { width: 73%; }

.u-width74per { width: 74%; }

.u-width75per { width: 75%; }

.u-width76per { width: 76%; }

.u-width77per { width: 77%; }

.u-width78per { width: 78%; }

.u-width79per { width: 79%; }

.u-width80per { width: 80%; }

.u-width81per { width: 81%; }

.u-width82per { width: 82%; }

.u-width83per { width: 83%; }

.u-width84per { width: 84%; }

.u-width85per { width: 85%; }

.u-width86per { width: 86%; }

.u-width87per { width: 87%; }

.u-width88per { width: 88%; }

.u-width89per { width: 89%; }

.u-width90per { width: 90%; }

.u-width91per { width: 91%; }

.u-width92per { width: 92%; }

.u-width93per { width: 93%; }

.u-width94per { width: 94%; }

.u-width95per { width: 95%; }

.u-width96per { width: 96%; }

.u-width97per { width: 97%; }

.u-width98per { width: 98%; }

.u-width99per { width: 99%; }

.u-width100per { width: 100%; }

@media screen and (max-width: 768px) { .u-sp-width0per { width: 0; }
  .u-sp-width1per { width: 1%; }
  .u-sp-width2per { width: 2%; }
  .u-sp-width3per { width: 3%; }
  .u-sp-width4per { width: 4%; }
  .u-sp-width5per { width: 5%; }
  .u-sp-width6per { width: 6%; }
  .u-sp-width7per { width: 7%; }
  .u-sp-width8per { width: 8%; }
  .u-sp-width9per { width: 9%; }
  .u-sp-width10per { width: 10%; }
  .u-sp-width11per { width: 11%; }
  .u-sp-width12per { width: 12%; }
  .u-sp-width13per { width: 13%; }
  .u-sp-width14per { width: 14%; }
  .u-sp-width15per { width: 15%; }
  .u-sp-width16per { width: 16%; }
  .u-sp-width17per { width: 17%; }
  .u-sp-width18per { width: 18%; }
  .u-sp-width19per { width: 19%; }
  .u-sp-width20per { width: 20%; }
  .u-sp-width21per { width: 21%; }
  .u-sp-width22per { width: 22%; }
  .u-sp-width23per { width: 23%; }
  .u-sp-width24per { width: 24%; }
  .u-sp-width25per { width: 25%; }
  .u-sp-width26per { width: 26%; }
  .u-sp-width27per { width: 27%; }
  .u-sp-width28per { width: 28%; }
  .u-sp-width29per { width: 29%; }
  .u-sp-width30per { width: 30%; }
  .u-sp-width31per { width: 31%; }
  .u-sp-width32per { width: 32%; }
  .u-sp-width33per { width: 33%; }
  .u-sp-width34per { width: 34%; }
  .u-sp-width35per { width: 35%; }
  .u-sp-width36per { width: 36%; }
  .u-sp-width37per { width: 37%; }
  .u-sp-width38per { width: 38%; }
  .u-sp-width39per { width: 39%; }
  .u-sp-width40per { width: 40%; }
  .u-sp-width41per { width: 41%; }
  .u-sp-width42per { width: 42%; }
  .u-sp-width43per { width: 43%; }
  .u-sp-width44per { width: 44%; }
  .u-sp-width45per { width: 45%; }
  .u-sp-width46per { width: 46%; }
  .u-sp-width47per { width: 47%; }
  .u-sp-width48per { width: 48%; }
  .u-sp-width49per { width: 49%; }
  .u-sp-width50per { width: 50%; }
  .u-sp-width51per { width: 51%; }
  .u-sp-width52per { width: 52%; }
  .u-sp-width53per { width: 53%; }
  .u-sp-width54per { width: 54%; }
  .u-sp-width55per { width: 55%; }
  .u-sp-width56per { width: 56%; }
  .u-sp-width57per { width: 57%; }
  .u-sp-width58per { width: 58%; }
  .u-sp-width59per { width: 59%; }
  .u-sp-width60per { width: 60%; }
  .u-sp-width61per { width: 61%; }
  .u-sp-width62per { width: 62%; }
  .u-sp-width63per { width: 63%; }
  .u-sp-width64per { width: 64%; }
  .u-sp-width65per { width: 65%; }
  .u-sp-width66per { width: 66%; }
  .u-sp-width67per { width: 67%; }
  .u-sp-width68per { width: 68%; }
  .u-sp-width69per { width: 69%; }
  .u-sp-width70per { width: 70%; }
  .u-sp-width71per { width: 71%; }
  .u-sp-width72per { width: 72%; }
  .u-sp-width73per { width: 73%; }
  .u-sp-width74per { width: 74%; }
  .u-sp-width75per { width: 75%; }
  .u-sp-width76per { width: 76%; }
  .u-sp-width77per { width: 77%; }
  .u-sp-width78per { width: 78%; }
  .u-sp-width79per { width: 79%; }
  .u-sp-width80per { width: 80%; }
  .u-sp-width81per { width: 81%; }
  .u-sp-width82per { width: 82%; }
  .u-sp-width83per { width: 83%; }
  .u-sp-width84per { width: 84%; }
  .u-sp-width85per { width: 85%; }
  .u-sp-width86per { width: 86%; }
  .u-sp-width87per { width: 87%; }
  .u-sp-width88per { width: 88%; }
  .u-sp-width89per { width: 89%; }
  .u-sp-width90per { width: 90%; }
  .u-sp-width91per { width: 91%; }
  .u-sp-width92per { width: 92%; }
  .u-sp-width93per { width: 93%; }
  .u-sp-width94per { width: 94%; }
  .u-sp-width95per { width: 95%; }
  .u-sp-width96per { width: 96%; }
  .u-sp-width97per { width: 97%; }
  .u-sp-width98per { width: 98%; }
  .u-sp-width99per { width: 99%; }
  .u-sp-width100per { width: 100%; } }

/******************************************************************
utility - max-width-percent
******************************************************************/
.u-max-width0 { max-width: 0; }

.u-max-width1per { max-width: 1%; }

.u-max-width2per { max-width: 2%; }

.u-max-width3per { max-width: 3%; }

.u-max-width4per { max-width: 4%; }

.u-max-width5per { max-width: 5%; }

.u-max-width6per { max-width: 6%; }

.u-max-width7per { max-width: 7%; }

.u-max-width8per { max-width: 8%; }

.u-max-width9per { max-width: 9%; }

.u-max-width10per { max-width: 10%; }

.u-max-width11per { max-width: 11%; }

.u-max-width12per { max-width: 12%; }

.u-max-width13per { max-width: 13%; }

.u-max-width14per { max-width: 14%; }

.u-max-width15per { max-width: 15%; }

.u-max-width16per { max-width: 16%; }

.u-max-width17per { max-width: 17%; }

.u-max-width18per { max-width: 18%; }

.u-max-width19per { max-width: 19%; }

.u-max-width20per { max-width: 20%; }

.u-max-width21per { max-width: 21%; }

.u-max-width22per { max-width: 22%; }

.u-max-width23per { max-width: 23%; }

.u-max-width24per { max-width: 24%; }

.u-max-width25per { max-width: 25%; }

.u-max-width26per { max-width: 26%; }

.u-max-width27per { max-width: 27%; }

.u-max-width28per { max-width: 28%; }

.u-max-width29per { max-width: 29%; }

.u-max-width30per { max-width: 30%; }

.u-max-width31per { max-width: 31%; }

.u-max-width32per { max-width: 32%; }

.u-max-width33per { max-width: 33%; }

.u-max-width34per { max-width: 34%; }

.u-max-width35per { max-width: 35%; }

.u-max-width36per { max-width: 36%; }

.u-max-width37per { max-width: 37%; }

.u-max-width38per { max-width: 38%; }

.u-max-width39per { max-width: 39%; }

.u-max-width40per { max-width: 40%; }

.u-max-width41per { max-width: 41%; }

.u-max-width42per { max-width: 42%; }

.u-max-width43per { max-width: 43%; }

.u-max-width44per { max-width: 44%; }

.u-max-width45per { max-width: 45%; }

.u-max-width46per { max-width: 46%; }

.u-max-width47per { max-width: 47%; }

.u-max-width48per { max-width: 48%; }

.u-max-width49per { max-width: 49%; }

.u-max-width50per { max-width: 50%; }

.u-max-width51per { max-width: 51%; }

.u-max-width52per { max-width: 52%; }

.u-max-width53per { max-width: 53%; }

.u-max-width54per { max-width: 54%; }

.u-max-width55per { max-width: 55%; }

.u-max-width56per { max-width: 56%; }

.u-max-width57per { max-width: 57%; }

.u-max-width58per { max-width: 58%; }

.u-max-width59per { max-width: 59%; }

.u-max-width60per { max-width: 60%; }

.u-max-width61per { max-width: 61%; }

.u-max-width62per { max-width: 62%; }

.u-max-width63per { max-width: 63%; }

.u-max-width64per { max-width: 64%; }

.u-max-width65per { max-width: 65%; }

.u-max-width66per { max-width: 66%; }

.u-max-width67per { max-width: 67%; }

.u-max-width68per { max-width: 68%; }

.u-max-width69per { max-width: 69%; }

.u-max-width70per { max-width: 70%; }

.u-max-width71per { max-width: 71%; }

.u-max-width72per { max-width: 72%; }

.u-max-width73per { max-width: 73%; }

.u-max-width74per { max-width: 74%; }

.u-max-width75per { max-width: 75%; }

.u-max-width76per { max-width: 76%; }

.u-max-width77per { max-width: 77%; }

.u-max-width78per { max-width: 78%; }

.u-max-width79per { max-width: 79%; }

.u-max-width80per { max-width: 80%; }

.u-max-width81per { max-width: 81%; }

.u-max-width82per { max-width: 82%; }

.u-max-width83per { max-width: 83%; }

.u-max-width84per { max-width: 84%; }

.u-max-width85per { max-width: 85%; }

.u-max-width86per { max-width: 86%; }

.u-max-width87per { max-width: 87%; }

.u-max-width88per { max-width: 88%; }

.u-max-width89per { max-width: 89%; }

.u-max-width90per { max-width: 90%; }

.u-max-width91per { max-width: 91%; }

.u-max-width92per { max-width: 92%; }

.u-max-width93per { max-width: 93%; }

.u-max-width94per { max-width: 94%; }

.u-max-width95per { max-width: 95%; }

.u-max-width96per { max-width: 96%; }

.u-max-width97per { max-width: 97%; }

.u-max-width98per { max-width: 98%; }

.u-max-width99per { max-width: 99%; }

.u-max-width100per { max-width: 100%; }

@media screen and (max-width: 768px) { .u-sp-max-width0per { max-width: 0; }
  .u-sp-max-width1per { max-width: 1%; }
  .u-sp-max-width2per { max-width: 2%; }
  .u-sp-max-width3per { max-width: 3%; }
  .u-sp-max-width4per { max-width: 4%; }
  .u-sp-max-width5per { max-width: 5%; }
  .u-sp-max-width6per { max-width: 6%; }
  .u-sp-max-width7per { max-width: 7%; }
  .u-sp-max-width8per { max-width: 8%; }
  .u-sp-max-width9per { max-width: 9%; }
  .u-sp-max-width10per { max-width: 10%; }
  .u-sp-max-width11per { max-width: 11%; }
  .u-sp-max-width12per { max-width: 12%; }
  .u-sp-max-width13per { max-width: 13%; }
  .u-sp-max-width14per { max-width: 14%; }
  .u-sp-max-width15per { max-width: 15%; }
  .u-sp-max-width16per { max-width: 16%; }
  .u-sp-max-width17per { max-width: 17%; }
  .u-sp-max-width18per { max-width: 18%; }
  .u-sp-max-width19per { max-width: 19%; }
  .u-sp-max-width20per { max-width: 20%; }
  .u-sp-max-width21per { max-width: 21%; }
  .u-sp-max-width22per { max-width: 22%; }
  .u-sp-max-width23per { max-width: 23%; }
  .u-sp-max-width24per { max-width: 24%; }
  .u-sp-max-width25per { max-width: 25%; }
  .u-sp-max-width26per { max-width: 26%; }
  .u-sp-max-width27per { max-width: 27%; }
  .u-sp-max-width28per { max-width: 28%; }
  .u-sp-max-width29per { max-width: 29%; }
  .u-sp-max-width30per { max-width: 30%; }
  .u-sp-max-width31per { max-width: 31%; }
  .u-sp-max-width32per { max-width: 32%; }
  .u-sp-max-width33per { max-width: 33%; }
  .u-sp-max-width34per { max-width: 34%; }
  .u-sp-max-width35per { max-width: 35%; }
  .u-sp-max-width36per { max-width: 36%; }
  .u-sp-max-width37per { max-width: 37%; }
  .u-sp-max-width38per { max-width: 38%; }
  .u-sp-max-width39per { max-width: 39%; }
  .u-sp-max-width40per { max-width: 40%; }
  .u-sp-max-width41per { max-width: 41%; }
  .u-sp-max-width42per { max-width: 42%; }
  .u-sp-max-width43per { max-width: 43%; }
  .u-sp-max-width44per { max-width: 44%; }
  .u-sp-max-width45per { max-width: 45%; }
  .u-sp-max-width46per { max-width: 46%; }
  .u-sp-max-width47per { max-width: 47%; }
  .u-sp-max-width48per { max-width: 48%; }
  .u-sp-max-width49per { max-width: 49%; }
  .u-sp-max-width50per { max-width: 50%; }
  .u-sp-max-width51per { max-width: 51%; }
  .u-sp-max-width52per { max-width: 52%; }
  .u-sp-max-width53per { max-width: 53%; }
  .u-sp-max-width54per { max-width: 54%; }
  .u-sp-max-width55per { max-width: 55%; }
  .u-sp-max-width56per { max-width: 56%; }
  .u-sp-max-width57per { max-width: 57%; }
  .u-sp-max-width58per { max-width: 58%; }
  .u-sp-max-width59per { max-width: 59%; }
  .u-sp-max-width60per { max-width: 60%; }
  .u-sp-max-width61per { max-width: 61%; }
  .u-sp-max-width62per { max-width: 62%; }
  .u-sp-max-width63per { max-width: 63%; }
  .u-sp-max-width64per { max-width: 64%; }
  .u-sp-max-width65per { max-width: 65%; }
  .u-sp-max-width66per { max-width: 66%; }
  .u-sp-max-width67per { max-width: 67%; }
  .u-sp-max-width68per { max-width: 68%; }
  .u-sp-max-width69per { max-width: 69%; }
  .u-sp-max-width70per { max-width: 70%; }
  .u-sp-max-width71per { max-width: 71%; }
  .u-sp-max-width72per { max-width: 72%; }
  .u-sp-max-width73per { max-width: 73%; }
  .u-sp-max-width74per { max-width: 74%; }
  .u-sp-max-width75per { max-width: 75%; }
  .u-sp-max-width76per { max-width: 76%; }
  .u-sp-max-width77per { max-width: 77%; }
  .u-sp-max-width78per { max-width: 78%; }
  .u-sp-max-width79per { max-width: 79%; }
  .u-sp-max-width80per { max-width: 80%; }
  .u-sp-max-width81per { max-width: 81%; }
  .u-sp-max-width82per { max-width: 82%; }
  .u-sp-max-width83per { max-width: 83%; }
  .u-sp-max-width84per { max-width: 84%; }
  .u-sp-max-width85per { max-width: 85%; }
  .u-sp-max-width86per { max-width: 86%; }
  .u-sp-max-width87per { max-width: 87%; }
  .u-sp-max-width88per { max-width: 88%; }
  .u-sp-max-width89per { max-width: 89%; }
  .u-sp-max-width90per { max-width: 90%; }
  .u-sp-max-width91per { max-width: 91%; }
  .u-sp-max-width92per { max-width: 92%; }
  .u-sp-max-width93per { max-width: 93%; }
  .u-sp-max-width94per { max-width: 94%; }
  .u-sp-max-width95per { max-width: 95%; }
  .u-sp-max-width96per { max-width: 96%; }
  .u-sp-max-width97per { max-width: 97%; }
  .u-sp-max-width98per { max-width: 98%; }
  .u-sp-max-width99per { max-width: 99%; }
  .u-sp-max-width100per { max-width: 100%; } }

/******************************************************************
utility - min-width-em
******************************************************************/
.u-min-width1em { min-width: 1em; }

.u-min-width2em { min-width: 2em; }

.u-min-width3em { min-width: 3em; }

.u-min-width4em { min-width: 4em; }

.u-min-width5em { min-width: 5em; }

.u-min-width6em { min-width: 6em; }

.u-min-width7em { min-width: 7em; }

.u-min-width8em { min-width: 8em; }

.u-min-width9em { min-width: 9em; }

.u-min-width10em { min-width: 10em; }

.u-min-width11em { min-width: 11em; }

.u-min-width12em { min-width: 12em; }

.u-min-width13em { min-width: 13em; }

.u-min-width14em { min-width: 14em; }

.u-min-width15em { min-width: 15em; }

.u-min-width16em { min-width: 16em; }

.u-min-width17em { min-width: 17em; }

.u-min-width18em { min-width: 18em; }

.u-min-width19em { min-width: 19em; }

.u-min-width20em { min-width: 20em; }

@media screen and (max-width: 768px) { .u-sp-min-width1em { min-width: 1em; }
  .u-sp-min-width2em { min-width: 2em; }
  .u-sp-min-width3em { min-width: 3em; }
  .u-sp-min-width4em { min-width: 4em; }
  .u-sp-min-width5em { min-width: 5em; }
  .u-sp-min-width6em { min-width: 6em; }
  .u-sp-min-width7em { min-width: 7em; }
  .u-sp-min-width8em { min-width: 8em; }
  .u-sp-min-width9em { min-width: 9em; }
  .u-sp-min-width10em { min-width: 10em; }
  .u-sp-min-width11em { min-width: 11em; }
  .u-sp-min-width12em { min-width: 12em; }
  .u-sp-min-width13em { min-width: 13em; }
  .u-sp-min-width14em { min-width: 14em; }
  .u-sp-min-width15em { min-width: 15em; }
  .u-sp-min-width16em { min-width: 16em; }
  .u-sp-min-width17em { min-width: 17em; }
  .u-sp-min-width18em { min-width: 18em; }
  .u-sp-min-width19em { min-width: 19em; }
  .u-sp-min-width20em { min-width: 20em; } }

/******************************************************************
utility - bg
******************************************************************/
.u-bg-white { background-color: #ffffff; }

.u-bg-lightblue { background-color: #e8f6f8; }

.u-bg-lightgray { background-color: #edf1f2; }

/******************************************************************
utility - color
******************************************************************/
.u-color-notice { color: #e50000; }

/******************************************************************
utility - over-opacity
******************************************************************/
.u-over-opacity { transition-property: opacity; transition-duration: 0.3s; }

.u-over-opacity:hover { opacity: 0.7; }

/******************************************************************
utility - link-reset
******************************************************************/
.u-link-reset { color: inherit; text-decoration: none; }

.u-link-reset:hover { color: inherit; text-decoration: none; }

@media screen and (max-width: 768px) { .u-sp-link-reset { color: inherit; text-decoration: none; }
  .u-sp-link-reset:hover { color: inherit; text-decoration: none; } }

/******************************************************************
utility - position
******************************************************************/
.u-static { position: static; }

.u-relative { position: relative; }

.u-absolute { position: absolute; }

.u-fixed { position: fixed; }

@media screen and (max-width: 768px) { .u-sp-static { position: static; }
  .u-sp-relative { position: relative; }
  .u-sp-absolute { position: absolute; }
  .u-sp-fixed { position: fixed; } }
